Adel Abu Hashim - Oct 2021
This case study aims to help Amber Heard
By analyzing new accounts posting/ commenting against a victim of a Social Bot Disinformation/Influence Operation.
We have three main datasets:
(The datasets screaped from reddit).
- 1- A dataset with submissions & comments data (2019).
- 2- Users Data (from 2006 to 2019).
- 3- A merged dataset (submissions & comments data, users data).
- 4- Daily creation data (# of accounts created per day from 2006 to 2019)
#import dependencies
import numpy as np
import pandas as pd
import matplotlib.pyplot as plt
import seaborn as sb
import helpers
import matplotlib.dates as mdates
import plotly.express as px
import plotly.graph_objects as go
import re
import warnings
warnings.filterwarnings('ignore')
sb.set_style("darkgrid")
%matplotlib inline
# load data
df = pd.read_csv("cleaned_data/reddit_cleaned_2019.csv")
df_merged = pd.read_csv("cleaned_data/reddit_merged_2019.csv")
df_users = pd.read_csv("cleaned_data/users_cleaned.csv")
# convert to datetime
df.created_at = pd.to_datetime(df.created_at)
df_merged.created_at = pd.to_datetime(df_merged.created_at)
df_merged.user_created_at = pd.to_datetime(df_merged.user_created_at)
df_users.user_created_at = pd.to_datetime(df_users.user_created_at)
Reddit Contributions (Comments / Submissions)¶
px.bar(data_frame=df['submission_comment'].value_counts().to_frame().reset_index(),
x="index", y="submission_comment", color='submission_comment', text = 'submission_comment' ).update_layout(title='Comment or Submission',
xaxis_title='contribution category',
yaxis_title='number of contributions').update_traces(marker_color='#5296dd')
fig = px.pie(data_frame=df['submission_comment'].value_counts().to_frame().reset_index(), values='submission_comment', names='index',
title='Comment or Submission')
fig.show()
df.author.value_counts().to_frame().head(10).reset_index()
| index | author | |
|---|---|---|
| 0 | -banned- | 4487 |
| 1 | AutoModerator | 426 |
| 2 | CelebBattleVoteBot | 120 |
| 3 | spells010 | 80 |
| 4 | Dannig178 | 70 |
| 5 | 5th_Law_of_Robotics | 68 |
| 6 | newsfeedmedia | 62 |
| 7 | SakuOtaku | 57 |
| 8 | Sovetika | 48 |
| 9 | bufedad | 43 |
fig = px.bar(df.author.value_counts().to_frame().head(10).reset_index(), x="author", y="index",
height=500,
title='Most commented user in 2019').update_traces(marker_color='#5296dd',).update_layout(
xaxis_title='number of comments',
yaxis_title='user name').update_traces(marker_color='#5296dd')
fig.update_yaxes(autorange="reversed")
df.author.value_counts().to_frame().head(10).reset_index()
| index | author | |
|---|---|---|
| 0 | -banned- | 4487 |
| 1 | AutoModerator | 426 |
| 2 | CelebBattleVoteBot | 120 |
| 3 | spells010 | 80 |
| 4 | Dannig178 | 70 |
| 5 | 5th_Law_of_Robotics | 68 |
| 6 | newsfeedmedia | 62 |
| 7 | SakuOtaku | 57 |
| 8 | Sovetika | 48 |
| 9 | bufedad | 43 |
AutoModerator is a system built into reddit that allows moderators to define "rules" (consisting of checks and actions) to be automatically applied to posts in their subreddit.
df_auto_moderator = df.query(" author == 'AutoModerator' ").reset_index(drop=True)
print(df_auto_moderator.shape)
df_auto_moderator.head(1)
(426, 17)
| child_id | permalink | text | parent_id | subreddit | author | created_at | sentiment_blob | sentiment_nltk | score | top_level | submission_comment | text_words | submission_text | submission_words | urls | urls_count | |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 0 | t1_ed0p84c | /r/JerkOffToCelebs/comments/abgjob/just_watche... | Your comment has been removed due to your acco... | t1_ed0p841 | r/JerkOffToCelebs | AutoModerator | 2019-01-01 16:54:19 | Positive | Positive | 1.0 | comment | comment | 46 | just_watched_aquaman_and_it_got_me_thinking_about | 9 | [] | 0 |
df_auto_moderator.submission_comment.value_counts()
comment 426 Name: submission_comment, dtype: int64
df_auto_moderator.subreddit.value_counts().head(10)
r/JerkOffToCelebs 189 r/Celebhub 102 r/TrueFMK 21 r/OutOfTheLoop 20 r/CelebEconomy 16 r/DC_Cinematic 12 r/SexiestLeague 5 r/AskReddit 5 r/celebnsfw 4 r/unpopularopinion 4 Name: subreddit, dtype: int64
df_auto_moderator['permalink'].iloc[26]
'/r/Celebhub/comments/arpqrd/amber_heard/egosb56/'
df_auto_moderator.text.value_counts().head()
**Thank you for your submission. Make sure to follow the rules.**\n\n**Don't forget to follow us on [Instagram](https://www.instagram.com/jotocelebs/) and [join our Discord Server](https://discord.gg/PrRFWsa)!**\n\n\n*I am a bot, and this action was performed automatically. Please [contact the moderators of this subreddit](/message/compose/?to=/r/JerkOffToCelebs) if you have any questions or concerns.* 64 Remember to keep comments civil.\n\n**[Follow our Instagram page](https://www.instagram.com/celebtag/) for more celebrity content and daily top posts!**\n\n\n*I am a bot, and this action was performed automatically. Please [contact the moderators of this subreddit](/message/compose/?to=/r/Celebhub) if you have any questions or concerns.* 59 **Thank you for your submission. Make sure to follow the rules.**\n\n**Check out our [FAP LOTTERY!](https://jerkofftocelebs.com/)**\n\n**Don't forget to follow us on [Instagram](https://www.instagram.com/jotocelebs/) and [join our Discord Server](https://discord.gg/PrRFWsa)!**\n\n\n*I am a bot, and this action was performed automatically. Please [contact the moderators of this subreddit](/message/compose/?to=/r/JerkOffToCelebs) if you have any questions or concerns.* 54 **Thank you for your submission. Make sure to follow the rules.**\n\n**Check out our [NEW FAP LOTTERY!](https://jerkofftocelebs.com/)**\n\n**Don't forget to follow us on [Instagram](https://www.instagram.com/jotocelebs/) and [join our Discord Server](https://discord.gg/PrRFWsa)!**\n\n\n*I am a bot, and this action was performed automatically. Please [contact the moderators of this subreddit](/message/compose/?to=/r/JerkOffToCelebs) if you have any questions or concerns.* 40 Make sure to follow our community guidelines.\n\n**[Get user flair](https://redd.it/e0a4mn) and [check out our Instagram page](https://www.instagram.com/celebtag/) for more celebrity content!**\n\n\n*I am a bot, and this action was performed automatically. Please [contact the moderators of this subreddit](/message/compose/?to=/r/Celebhub) if you have any questions or concerns.* 17 Name: text, dtype: int64
This is a vote bot
df_vote_bot = df.query(" author == 'CelebBattleVoteBot' ").reset_index(drop=True)
print(df_vote_bot.shape)
df_vote_bot.head()
(120, 17)
| child_id | permalink | text | parent_id | subreddit | author | created_at | sentiment_blob | sentiment_nltk | score | top_level | submission_comment | text_words | submission_text | submission_words | urls | urls_count | |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 0 | t1_ek959vk | /r/CelebBattles/comments/ba5rm3/amber_heard_vs... | Vote here: https://www.strawpoll.me/17754197\n... | t3_ba5rm3 | r/CelebBattles | CelebBattleVoteBot | 2019-04-06 16:01:40 | Positive | Neutral | 1.0 | submission | comment | 14 | amber_heard_vs_scarlett_johansson | 5 | ['https://www.strawpoll.me', 'https://www.stra... | 2 |
| 1 | t1_ekb5hq0 | /r/CelebBattles/comments/bafs1y/emmy_rossum_vs... | Vote here: https://www.strawpoll.me/17759820\n... | t3_bafs1y | r/CelebBattles | CelebBattleVoteBot | 2019-04-07 12:33:12 | Positive | Neutral | 1.0 | submission | comment | 14 | emmy_rossum_vs_amber_heard | 5 | ['https://www.strawpoll.me', 'https://www.stra... | 2 |
| 2 | t1_ekn9rsu | /r/CelebBattles/comments/ba5rm3/amber_heard_vs... | Winner of this battle: Scarlett Johansson\n\nT... | t3_ba5rm3 | r/CelebBattles | CelebBattleVoteBot | 2019-04-11 17:29:07 | Positive | Neutral | 1.0 | submission | comment | 49 | amber_heard_vs_scarlett_johansson | 5 | ['https://i.imgur.com'] | 1 |
| 3 | t1_ekq1i7x | /r/CelebBattles/comments/bafs1y/emmy_rossum_vs... | Winner of this battle: Amber Heard\n\nTotal vo... | t3_bafs1y | r/CelebBattles | CelebBattleVoteBot | 2019-04-12 15:31:43 | Positive | Neutral | 1.0 | submission | comment | 49 | emmy_rossum_vs_amber_heard | 5 | ['https://i.imgur.com'] | 1 |
| 4 | t1_ektma74 | /r/CelebBattles/comments/bcuxqa/amber_heard_vs... | Vote here: https://www.strawpoll.me/17810144\n... | t3_bcuxqa | r/CelebBattles | CelebBattleVoteBot | 2019-04-13 20:35:22 | Positive | Neutral | 1.0 | submission | comment | 14 | amber_heard_vs_melissa_benoist | 5 | ['https://www.strawpoll.me', 'https://www.stra... | 2 |
df_vote_bot['permalink'].iloc[0]
'/r/CelebBattles/comments/ba5rm3/amber_heard_vs_scarlett_johansson/ek959vk/'
df_vote_bot.subreddit.value_counts().head(10)
r/CelebBattles 116 r/Celebhub 4 Name: subreddit, dtype: int64
df_vote_bot.submission_comment.value_counts()
comment 120 Name: submission_comment, dtype: int64
df_vote_bot.created_at.dt.date.value_counts()
2019-04-19 4
2019-12-19 4
2019-10-08 3
2019-08-07 3
2019-05-19 2
..
2019-06-30 1
2019-04-28 1
2019-06-18 1
2019-12-26 1
2019-05-09 1
Name: created_at, Length: 96, dtype: int64
df_vote_bot.text.value_counts().head()
Winner of this battle: Amber Heard\n\nTotal votes cast: 219\n\nAmber Heard: 113\n\nGal Gadot: 106\n\nAmber Heard won this battle by a margin of 7 votes\n\nPie chart: https://i.imgur.com/py1Bwdl.png\n\n---\n\n^^Results ^^are ^^considered ^^decisive ^^after ^^120 ^^hours ^^of ^^battle ^^start. ^^I'm ^^a ^^bot. ^^This ^^action ^^was ^^performed ^^automatically. 1 Vote here: https://youpoll.me/25712/\n\nResults: https://youpoll.me/25712/r\n\n---\n\n^^I'm ^^a ^^bot. ^^This ^^action ^^was ^^performed ^^automatically. 1 Vote here: https://youpoll.me/26795/\n\nResults: https://youpoll.me/26795/r\n\n---\n\n^^I'm ^^a ^^bot. ^^This ^^action ^^was ^^performed ^^automatically. 1 Vote here: https://youpoll.me/15158/\n\nResults: https://youpoll.me/15158/r\n\n---\n\n^^I'm ^^a ^^bot. ^^This ^^action ^^was ^^performed ^^automatically. 1 Vote here: https://youpoll.me/15572/\n\nResults: https://youpoll.me/15572/r\n\n---\n\n^^I'm ^^a ^^bot. ^^This ^^action ^^was ^^performed ^^automatically. 1 Name: text, dtype: int64
df_spells = df.query(" author == 'spells010' ").reset_index(drop=True)
print(df_spells.shape)
df_spells.head()
(80, 17)
| child_id | permalink | text | parent_id | subreddit | author | created_at | sentiment_blob | sentiment_nltk | score | top_level | submission_comment | text_words | submission_text | submission_words | urls | urls_count | |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 0 | t3_ckz6p7 | /r/u_spells010/comments/ckz6p7/how_can_i_meet_... | how can i meet Amber Heard ( +91 9116496706 cl... | NaN | u/spells010 | spells010 | 2019-08-02 04:15:17 | Neutral | Positive | 1.0 | NaN | submission | 15 | u_spells010 | 2 | [] | 0 |
| 1 | t3_ckz9bk | /r/u_spells010/comments/ckz9bk/powerful_attrac... | powerful attraction love spell for Amber Heard... | NaN | u/spells010 | spells010 | 2019-08-02 04:22:56 | Positive | Positive | 1.0 | NaN | submission | 16 | u_spells010 | 2 | [] | 0 |
| 2 | t3_ckzdq9 | /r/u_spells010/comments/ckzdq9/how_to_become_b... | how to become boyfriend Amber Heard ( +91 9116... | NaN | u/spells010 | spells010 | 2019-08-02 04:35:57 | Neutral | Positive | 1.0 | NaN | submission | 15 | u_spells010 | 2 | [] | 0 |
| 3 | t3_ckzgcm | /r/u_spells010/comments/ckzgcm/how_to_become_g... | how to become girlfriend Amber Heard ( +91 911... | NaN | u/spells010 | spells010 | 2019-08-02 04:43:50 | Neutral | Positive | 1.0 | NaN | submission | 15 | u_spells010 | 2 | [] | 0 |
| 4 | t3_ckzh9t | /r/u_spells010/comments/ckzh9t/how_to_connect_... | how to connect love relationship with Amber He... | NaN | u/spells010 | spells010 | 2019-08-02 04:46:32 | Positive | Positive | 1.0 | NaN | submission | 17 | u_spells010 | 2 | [] | 0 |
df_spells.submission_comment.value_counts()
submission 80 Name: submission_comment, dtype: int64
df_spells['permalink'].iloc[0]
'/r/u_spells010/comments/ckz6p7/how_can_i_meet_amber_heard_91_9116496706_clontact/'
df_spells.subreddit.value_counts().head(10)
u/spells010 80 Name: subreddit, dtype: int64
df_spells.text.value_counts().head(10)
Amber Heard Make Him Love Me by love spell (clontact phone / mobile number +91 9116496706 whatsapp) 5 powerful attraction love spell for Amber Heard ( +91 9116496706 clontact phone / mobile number whatsapp) 5 how to become Amber Heard 's' wife ( +91 9116496706 clontact phone / mobile number whatsapp) 4 how to make love marrige with Amber Heard ( +91 9116496706 clontact phone / mobile number whatsapp) 4 how to become boyfriend Amber Heard ( +91 9116496706 clontact phone / mobile number whatsapp) 4 Joining Together love Photo Spell Amber Heard ( +91 9116496706 clontact phone / mobile number whatsapp) 4 how to make fall in love Amber Heard ( +91 9116496706 clontact phone / mobile number whatsapp) 4 how to become Amber Heard 's' husbannd ( +91 9116496706 clontact phone / mobile number whatsapp) 4 revenge spell for Amber Heard ( +91 9116496706 clontact phone / mobile number whatsapp) 4 whats Amber Heard ' s phone / mobile number ( +91 9116496706 clontact phone / mobile number whatsapp) 4 Name: text, dtype: int64
this user made 80 submissions in only one subreddit (u/spells010) which is the same of his name! he is abosoultely a bot, he is announcing a phone number (+91 9116496706).
df_users[df_users.user_name == 'Dannig178']
| user_name | has_verified_email | is_mod | is_gold | is_banned | comment_karma | link_karma | user_created_at | banned_unverified | creation_year | |
|---|---|---|---|---|---|---|---|---|---|---|
| 13888 | Dannig178 | True | True | True | False | 2765.0 | 982410.0 | 2014-05-14 14:35:40 | others | others |
df_dannig = df.query(" author == 'Dannig178' ").reset_index(drop=True)
print(df_dannig.shape)
df_dannig.head()
(70, 17)
| child_id | permalink | text | parent_id | subreddit | author | created_at | sentiment_blob | sentiment_nltk | score | top_level | submission_comment | text_words | submission_text | submission_words | urls | urls_count | |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 0 | t3_ais5uh | /r/celeb_blondes/comments/ais5uh/amber_heard/ | Amber Heard | NaN | r/celeb_blondes | Dannig178 | 2019-01-22 22:01:53 | Neutral | Neutral | 68.0 | NaN | submission | 2 | celeb_blondes | 2 | [] | 0 |
| 1 | t3_ajcvsb | /r/CelebrityButts/comments/ajcvsb/amber_heard/ | Amber Heard | NaN | r/CelebrityButts | Dannig178 | 2019-01-24 14:22:39 | Neutral | Neutral | 59.0 | NaN | submission | 2 | amber_heard | 2 | [] | 0 |
| 2 | t1_ef6dc8n | /r/TrueFMK/comments/ako0za/amber_heard_gal_gad... | FMK | t3_ako0za | r/TrueFMK | Dannig178 | 2019-01-28 14:56:31 | Neutral | Neutral | 15.0 | submission | comment | 1 | amber_heard_gal_gadot_margot_robbie | 6 | [] | 0 |
| 3 | t3_algbcp | /r/CelebrityPokies/comments/algbcp/amber_heard/ | Amber Heard | NaN | r/CelebrityPokies | Dannig178 | 2019-01-30 19:21:00 | Neutral | Neutral | 32.0 | NaN | submission | 2 | amber_heard | 2 | [] | 0 |
| 4 | t3_amf3f6 | /r/BralessCelebs/comments/amf3f6/amber_heard/ | Amber Heard | NaN | r/BralessCelebs | Dannig178 | 2019-02-02 15:35:11 | Neutral | Neutral | 20.0 | NaN | submission | 2 | amber_heard | 2 | [] | 0 |
df_dannig.subreddit.value_counts().head(10)
r/BralessCelebs 7 r/CelebritiesBarefoot 7 r/celebheels 7 r/celeb_nylons 7 r/celeb_underwear 7 r/handbra 5 r/Celebs 4 r/CelebrityButts 4 r/CelebrityPokies 3 r/celebritylegs 3 Name: subreddit, dtype: int64
df_dannig.submission_comment.value_counts()
submission 67 comment 3 Name: submission_comment, dtype: int64
df_dannig.text.value_counts().head(10)
Amber Heard 67 FMK 1 Amber 1 /r/celeb_underwear 1 Name: text, dtype: int64
df_dannig_contributions = df_dannig.groupby(df_dannig.created_at.dt.date).size().reset_index(name='n_contributions')
fig = px.bar(df_dannig_contributions,
x='created_at',
y='n_contributions', title='The number of "Dannig178" contributions in 2021')
fig.update_layout(
xaxis = dict(
title='Contribution Date',
tickmode = 'array',
tickvals = df_dannig_contributions.created_at,
)
)
fig.update_traces(marker_color='red', marker_line_width=1, opacity=1, textposition='auto')
# , marker_line_color='#5296dd'
fig.show()
df_dannig_contributions.sort_values('n_contributions', ascending=False).head(10)
| created_at | n_contributions | |
|---|---|---|
| 44 | 2019-10-31 | 4 |
| 23 | 2019-05-07 | 3 |
| 30 | 2019-06-15 | 2 |
| 21 | 2019-04-13 | 2 |
| 28 | 2019-06-10 | 2 |
| 27 | 2019-06-08 | 2 |
| 35 | 2019-07-23 | 2 |
| 36 | 2019-07-25 | 2 |
| 24 | 2019-05-18 | 2 |
| 10 | 2019-03-01 | 2 |
Negative Submissions
# check the date this account was creted
df_users[df_users.user_name == '5th_Law_of_Robotics']
| user_name | has_verified_email | is_mod | is_gold | is_banned | comment_karma | link_karma | user_created_at | banned_unverified | creation_year | |
|---|---|---|---|---|---|---|---|---|---|---|
| 68174 | 5th_Law_of_Robotics | True | True | True | True | NaN | NaN | NaT | banned | banned |
df_law = df.query(" author == '5th_Law_of_Robotics' ").reset_index(drop=True)
print(df_law.shape)
df_law.head()
(68, 17)
| child_id | permalink | text | parent_id | subreddit | author | created_at | sentiment_blob | sentiment_nltk | score | top_level | submission_comment | text_words | submission_text | submission_words | urls | urls_count | |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 0 | t1_ehzsb1t | /r/WeinsteinEffect/comments/axbq7t/johnny_depp... | Lets hope he gets justice if what he's saying ... | t3_axbq7t | r/WeinsteinEffect | 5th_Law_of_Robotics | 2019-03-07 14:05:02 | Positive | Positive | 3.0 | submission | comment | 11 | johnny_depp_sues_exwife_amber_heard_over_me_too | 9 | [] | 0 |
| 1 | t1_eif82ty | /r/WeinsteinEffect/comments/b0h5wa/why_some_pe... | >"Unaware that members of Mr. Depp's security ... | t3_b0h5wa | r/WeinsteinEffect | 5th_Law_of_Robotics | 2019-03-13 11:34:38 | Negative | Neutral | 41.0 | submission | comment | 126 | why_some_people_are_uncanceling_johnny_depp_in | 8 | [] | 0 |
| 2 | t1_eif842s | /r/WeinsteinEffect/comments/b0h5wa/why_some_pe... | > Idk at the time, it *really* did seem like h... | t1_eieox9f | r/WeinsteinEffect | 5th_Law_of_Robotics | 2019-03-13 11:35:19 | Negative | Neutral | -6.0 | comment | comment | 57 | why_some_people_are_uncanceling_johnny_depp_in | 8 | [] | 0 |
| 3 | t1_eif8cvt | /r/WeinsteinEffect/comments/b0h5wa/why_some_pe... | >So apparently the Amber Heard case wasn't as ... | t1_eiemnna | r/WeinsteinEffect | 5th_Law_of_Robotics | 2019-03-13 11:40:17 | Positive | Negative | 6.0 | comment | comment | 91 | why_some_people_are_uncanceling_johnny_depp_in | 8 | [] | 0 |
| 4 | t1_eif8eqs | /r/WeinsteinEffect/comments/b0h5wa/why_some_pe... | In a just world this would end her career.\n\n... | t1_eif6z6o | r/WeinsteinEffect | 5th_Law_of_Robotics | 2019-03-13 11:41:21 | Negative | Negative | 17.0 | comment | comment | 27 | why_some_people_are_uncanceling_johnny_depp_in | 8 | [] | 0 |
df_law.submission_comment.value_counts()
comment 62 submission 6 Name: submission_comment, dtype: int64
df_law.subreddit.value_counts().head(10)
r/WeinsteinEffect 39 r/MensRights 10 r/Egalitarianism 7 r/entertainment 7 r/Toxic_Femininity 3 r/ProMaleCollective 1 r/RedditCensors 1 Name: subreddit, dtype: int64
df_law.text.value_counts().head(10)
Petition To Remove 'Accused DV Perpetrator' Amber Heard from Aquaman 2 2 Amber Heard Worried She Will Be 'Demonized' In Johnny Depp Lawsuit, Wants Details Kept Private 2 So you don't know what a comparison is? 1 Johnny didn't do anything wrong. 1 >Depp still has a violent past though. \n\n\nElaborate.\n\n\n>You just need to believe that. \n\n\nSo you believe he abused her based on what?\n\n 1 Johnny Depp Scores a Victory in Amber Heard $50 Million Defamation Lawsuit 1 So you won't answer in good faith. Noted.\n\n\n"All the time" is an expression that isn't meant literally every instant always.\n\n\nPeople fall in love all the time doesn't mean everyone is in love at any given second.\n\n\nWould you correct a BLM activist who said blacks are profiled all the time? 1 >Not only is that article from over four years ago,\n\nStill relevant.\n\n\n> but it's not about RAINN.\n\n\nIt does reference RAINN as the source for the stats.\n\n\nYou could also go look at their posted methodology. That's what I did. 1 He means the divorce hearing.\n\n\nShe filed a restraining order when they separated then agreed to drop it for 7 million.\n\n\nIt's interesting according to Wikipedia all Johnny's friends begged him not to marry her without a prenup. He ignored them and she left within a year with significant financial gain. 1 I've been told longer sentences for the same crime and lower graduation rates are male privileges. So that.\n\n\nAnd if you're in a job requiring a suit every day you are privileged to be forced to wear a suit and be comfortable with lower AC temps while women are oppressed with choices, some of which have the consequence of being cold. 1 Name: text, dtype: int64
df_law_contributions = df_law.groupby(df_law.created_at.dt.date).size().reset_index(name='n_contributions')
df_law_contributions.sort_values('n_contributions',ascending=False)
| created_at | n_contributions | |
|---|---|---|
| 1 | 2019-03-13 | 36 |
| 2 | 2019-03-14 | 11 |
| 4 | 2019-03-24 | 7 |
| 9 | 2019-09-11 | 5 |
| 5 | 2019-03-26 | 3 |
| 0 | 2019-03-07 | 1 |
| 3 | 2019-03-23 | 1 |
| 6 | 2019-07-27 | 1 |
| 7 | 2019-07-30 | 1 |
| 8 | 2019-08-30 | 1 |
| 10 | 2019-09-12 | 1 |
fig = px.bar(df_law_contributions,
x='created_at',
y='n_contributions', title='The number of "5th_Law_of_Robotics" contributions in 2021')
fig.update_layout(
xaxis = dict(
title='Contribution Date',
tickmode = 'array',
tickvals = df_law_contributions.created_at,
)
)
fig.update_traces(marker_color='red',
marker_line_width=2, opacity=1, textposition='auto')
fig.show()
df_law_contributions
| created_at | n_contributions | |
|---|---|---|
| 0 | 2019-03-07 | 1 |
| 1 | 2019-03-13 | 36 |
| 2 | 2019-03-14 | 11 |
| 3 | 2019-03-23 | 1 |
| 4 | 2019-03-24 | 7 |
| 5 | 2019-03-26 | 3 |
| 6 | 2019-07-27 | 1 |
| 7 | 2019-07-30 | 1 |
| 8 | 2019-08-30 | 1 |
| 9 | 2019-09-11 | 5 |
| 10 | 2019-09-12 | 1 |
news bot
df_news = df.query(" author == 'newsfeedmedia' ").reset_index(drop=True)
print(df_news.shape)
df_news.head()
(62, 17)
| child_id | permalink | text | parent_id | subreddit | author | created_at | sentiment_blob | sentiment_nltk | score | top_level | submission_comment | text_words | submission_text | submission_words | urls | urls_count | |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 0 | t3_aw9hyc | /r/newsfeedmedia/comments/aw9hyc/johnny_depp_s... | Johnny Depp sues ex-wife Amber Heard for $50mi... | NaN | r/newsfeedmedia | newsfeedmedia | 2019-03-01 20:44:43 | Neutral | Negative | 1.0 | NaN | submission | 11 | johnny_depp_sues_exwife_amber_heard_for_50million | 8 | [] | 0 |
| 1 | t3_awf679 | /r/newsfeedmedia/comments/awf679/amber_heard_s... | Amber Heard says she ‘will not be silenced’ af... | NaN | r/newsfeedmedia | newsfeedmedia | 2019-03-02 07:14:18 | Neutral | Negative | 1.0 | NaN | submission | 18 | amber_heard_says_she_will_not_be_silenced_after | 9 | [] | 0 |
| 2 | t3_aww6e1 | /r/newsfeedmedia/comments/aww6e1/johnny_depp_c... | Johnny Depp claims ex-wife Amber Heard had an ... | NaN | r/newsfeedmedia | newsfeedmedia | 2019-03-03 17:29:11 | Neutral | Neutral | 1.0 | NaN | submission | 12 | johnny_depp_claims_exwife_amber_heard_had_an | 8 | [] | 0 |
| 3 | t3_az963b | /r/newsfeedmedia/comments/az963b/amber_heard_i... | Amber Heard is corporate chic in fiery orange ... | NaN | r/newsfeedmedia | newsfeedmedia | 2019-03-09 22:49:30 | Neutral | Neutral | 1.0 | NaN | submission | 18 | amber_heard_is_corporate_chic_in_fiery_orange | 8 | [] | 0 |
| 4 | t3_b032mw | /r/newsfeedmedia/comments/b032mw/amber_heard_r... | Amber Heard reveals how hard it was to come ou... | NaN | r/newsfeedmedia | newsfeedmedia | 2019-03-12 03:41:58 | Negative | Negative | 1.0 | NaN | submission | 15 | amber_heard_reveals_how_hard_it_was_to_come_out | 10 | [] | 0 |
df_news.subreddit.value_counts().head(10)
r/newsfeedmedia 62 Name: subreddit, dtype: int64
df_news.submission_comment.value_counts()
submission 62 Name: submission_comment, dtype: int64
df_news['permalink'].iloc[5]
'/r/newsfeedmedia/comments/b1513g/amber_heard_seen_sharing_a_passionate_kiss_with/'
df_news.text.value_counts().head(10)
Amber Heard comforted after lawyer meeting… amid $50million defamation lawsuit from ex Johnny Depp 1 Amber Heard is spotted out with rumored beau Andy Muschietti amid Johnny Depp lawsuit drama 1 Amber Heard looks radiant in cream blouse during Cannes Film Festival 1 Bella Hadid and Amber Heard sizzle at the Pain and Glory premiere during Cannes Film Festival 1 Amber Heard showcases her incredible figure in a tiny red bikini on a yacht in the Amalfi Coast 1 Amber Heard hints at legal troubles with ex-husband Johnny Depp 1 Amber Heard rocks a chic skirt with leg slit after launching initiative to help women in Lebanon 1 Amber Heard looks ready for business in a black suit as she lands in New York 1 Amber Heard says Johnny Depp is refusing to provide evidence 1 Amber Heard and James Marsden to star in remake of Stephen King’s The Stand 1 Name: text, dtype: int64
df_news_contributions = df_news.groupby(df_news.created_at.dt.date).size().reset_index(name='n_contributions')
fig = px.bar(df_news_contributions,
x='created_at',
y='n_contributions', title='The number of "newsfeedmedia" contributions in 2021')
fig.update_layout(
xaxis = dict(
title='Contribution Date',
tickmode = 'array',
tickvals = df_news_contributions.created_at,
)
)
fig.update_traces(marker_color='red', marker_line_width=2, opacity=1)
# , marker_line_color='#5296dd'
fig.show()
df_news_contributions.sort_values('n_contributions', ascending=False).head(10)
| created_at | n_contributions | |
|---|---|---|
| 15 | 2019-04-12 | 2 |
| 26 | 2019-05-13 | 2 |
| 51 | 2019-10-11 | 2 |
| 17 | 2019-04-14 | 2 |
| 30 | 2019-05-17 | 2 |
| 42 | 2019-08-16 | 1 |
| 32 | 2019-05-25 | 1 |
| 33 | 2019-05-26 | 1 |
| 34 | 2019-06-13 | 1 |
| 35 | 2019-07-02 | 1 |
df_saku = df.query(" author == 'SakuOtaku' ").reset_index(drop=True)
print(df_saku.shape)
df_saku.head()
(57, 17)
| child_id | permalink | text | parent_id | subreddit | author | created_at | sentiment_blob | sentiment_nltk | score | top_level | submission_comment | text_words | submission_text | submission_words | urls | urls_count | |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 0 | t1_ehpfh5i | /r/GamerGhazi/comments/awsjlq/johnny_depp_sues... | Didn't he even agree that she wasn't lying dur... | t3_awsjlq | r/GamerGhazi | SakuOtaku | 2019-03-03 16:33:27 | Positive | Neutral | 21.0 | submission | comment | 29 | johnny_depp_sues_amber_heard_over_metoo_article | 8 | [] | 0 |
| 1 | t1_ehpgzu6 | /r/GamerGhazi/comments/awsjlq/johnny_depp_sues... | He's had history of being violent on set, and ... | t1_ehpg2x3 | r/GamerGhazi | SakuOtaku | 2019-03-03 16:53:26 | Negative | Negative | 25.0 | comment | comment | 31 | johnny_depp_sues_amber_heard_over_metoo_article | 8 | [] | 0 |
| 2 | t3_axbq7t | /r/WeinsteinEffect/comments/axbq7t/johnny_depp... | Johnny Depp sues ex-wife Amber Heard Over Me T... | NaN | r/WeinsteinEffect | SakuOtaku | 2019-03-04 20:12:30 | Neutral | Neutral | 24.0 | NaN | submission | 10 | johnny_depp_sues_exwife_amber_heard_over_me_too | 9 | [] | 0 |
| 3 | t1_ehsgdug | /r/WeinsteinEffect/comments/axbq7t/johnny_depp... | I thought it was worth posting here, though fr... | t3_axbq7t | r/WeinsteinEffect | SakuOtaku | 2019-03-04 20:15:16 | Positive | Neutral | 8.0 | submission | comment | 31 | johnny_depp_sues_exwife_amber_heard_over_me_too | 9 | [] | 0 |
| 4 | t3_b0h5wa | /r/WeinsteinEffect/comments/b0h5wa/why_some_pe... | Why Some People Are 'Uncanceling' Johnny Depp ... | NaN | r/WeinsteinEffect | SakuOtaku | 2019-03-13 03:24:23 | Neutral | Negative | 257.0 | NaN | submission | 15 | why_some_people_are_uncanceling_johnny_depp_in | 8 | [] | 0 |
df_saku.subreddit.value_counts().head(10)
r/WeinsteinEffect 48 r/movies 4 r/GamerGhazi 4 r/harrypotter 1 Name: subreddit, dtype: int64
df_saku.submission_comment.value_counts()
comment 54 submission 3 Name: submission_comment, dtype: int64
df_saku['permalink'].iloc[5]
'/r/WeinsteinEffect/comments/b0h5wa/why_some_people_are_uncanceling_johnny_depp_in/eiemnna/'
df_saku.text.value_counts().head(5)
As someone who first brought the newer parts of the story to the sub, I don't think it fits anymore. It's domestic violence, yes, but at this point, it's not really so much a Weinstein-esque thing as it is a court case where both sides are accusing the other. \n\nIf this gets removed, then it's not because people don't acknowledge male victimhood. It's mostly because this story just doesn't really fit here at this point. 1 Two different sources, both made to look like victims lie on average. I've been on RAINN's site before, the low conviction rate is due to the difficulty of proving rape (rape kits have to be done in a very short span of time iirc). The FBI may be counting "false" as cases where the alleged rapist wasn't convicted. Aka you cherry picked. 1 Before it seemed like this case was heading into the "he tried to silence her" direction. Now it's moved from that. Even initially in 2016 the case wouldn't have belonged here. It went from domestic to power related back to domestic. 1 Even if it was removed, this topic has already been covered here to the fullest extent it can be at this stage. We still don't know who's telling the truth, there's been no verdict. \n\nTo re-cover the story every time Depp counter alleges something is just gossipy journalism pandering to MRAs or people who've already made up their minds before the trial is over. We need to wait and see. \n\nCase in point, not to get salty over lack of karma but posts like these barely having to do with this sub get hundreds of upvotes while I posted something the other day involving a well known internet celebrity who sent nudes to fans who were minors (using power to commit sex crimes) and it got a whopping 10 upvotes.\n\n I'm not concerned because it was my post, but it seems like gossip is starting to trump relevant content. 1 This whole case is just strange to me- mostly because I used to really really like Johnny Depp before all of this. Idk at the time, it *really* did seem like he was guilty. Idk currently going off of that initial trial and what's happening now, I'm guessing it was mutual maybe (with the whole "neither of us was lying" thing, etc) but frankly I think I'll wait and see before I make any further judgments. 1 Name: text, dtype: int64
df_saku_contributions = df_saku.groupby(df_saku.created_at.dt.date).size().reset_index(name='n_contributions')
fig = px.bar(df_saku_contributions,
x='created_at',
y='n_contributions', title='The number of "SakuOtamu" contributions in 2021')
fig.update_layout(
xaxis = dict(
title='Contribution Date',
tickmode = 'array',
tickvals = df_saku_contributions.created_at,
)
)
fig.update_traces(marker_color='red', marker_line_width=2, opacity=1)
# , marker_line_color='#5296dd'
fig.show()
df_saku_contributions.sort_values('n_contributions', ascending=False).head(10)
| created_at | n_contributions | |
|---|---|---|
| 2 | 2019-03-13 | 19 |
| 3 | 2019-03-14 | 15 |
| 8 | 2019-05-22 | 11 |
| 4 | 2019-03-16 | 4 |
| 0 | 2019-03-03 | 2 |
| 1 | 2019-03-04 | 2 |
| 5 | 2019-04-12 | 2 |
| 6 | 2019-04-13 | 1 |
| 7 | 2019-04-14 | 1 |
df_sov = df.query(" author == 'Sovetika' ").reset_index(drop=True)
print(df_sov.shape)
df_sov.head()
(48, 17)
| child_id | permalink | text | parent_id | subreddit | author | created_at | sentiment_blob | sentiment_nltk | score | top_level | submission_comment | text_words | submission_text | submission_words | urls | urls_count | |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 0 | t3_atwt8e | /r/lukomorye/comments/atwt8e/amber_heard_z835/ | Amber Heard (z835) | NaN | r/lukomorye | Sovetika | 2019-02-23 15:56:02 | Neutral | Neutral | 1.0 | NaN | submission | 3 | amber_heard_z835 | 3 | [] | 0 |
| 1 | t3_awifd6 | /r/lukomorye/comments/awifd6/amber_heard_z982/ | Amber Heard (z982) | NaN | r/lukomorye | Sovetika | 2019-03-02 14:47:24 | Neutral | Neutral | 1.0 | NaN | submission | 3 | amber_heard_z982 | 3 | [] | 0 |
| 2 | t3_awn4ia | /r/lukomorye/comments/awn4ia/amber_heard_z1001/ | Amber Heard (z1001) | NaN | r/lukomorye | Sovetika | 2019-03-02 22:18:46 | Neutral | Neutral | 1.0 | NaN | submission | 3 | amber_heard_z1001 | 3 | [] | 0 |
| 3 | t3_awtsku | /r/lukomorye/comments/awtsku/amber_heard_z1008/ | Amber Heard (z1008) | NaN | r/lukomorye | Sovetika | 2019-03-03 13:01:10 | Neutral | Neutral | 1.0 | NaN | submission | 3 | amber_heard_z1008 | 3 | [] | 0 |
| 4 | t3_awz0k4 | /r/lukomorye/comments/awz0k4/amber_heard_z1011/ | Amber Heard (z1011) | NaN | r/lukomorye | Sovetika | 2019-03-03 21:46:41 | Neutral | Neutral | 1.0 | NaN | submission | 3 | amber_heard_z1011 | 3 | [] | 0 |
df_sov.submission_comment.value_counts()
submission 48 Name: submission_comment, dtype: int64
df_sov.subreddit.value_counts().head(10)
r/STRANI 23 r/SOVETIKA 17 r/lukomorye 8 Name: subreddit, dtype: int64
df_sov['permalink'].iloc[5]
'/r/lukomorye/comments/axctrj/amber_heard_z1016/'
df_sov.text.value_counts().head(5)
Amber Heard (s381) | Sovetika.ru - знаменитости 1 Amber Heard - s244 | Strani.ru - gallery 1 Amber Heard - s246 | Strani.ru - gallery 1 Amber Heard - s241 | Strani.ru - gallery 1 Amber Heard (s372) | Sovetika.ru - знаменитости 1 Name: text, dtype: int64
df_sov_contributions = df_sov.groupby(df_sov.created_at.dt.date).size().reset_index(name='n_contributions')
fig = px.bar(df_sov_contributions,
x='created_at',
y='n_contributions', title='The number of "Sovetika" contributions in 2021')
fig.update_layout(
xaxis = dict(
title='Contribution Date',
tickmode = 'array',
tickvals = df_sov_contributions.created_at,
)
)
fig.update_traces(marker_color='red', marker_line_width=2, opacity=1)
# , marker_line_color='#5296dd'
fig.show()
df_sov_contributions.sort_values('n_contributions', ascending=False).head(10)
| created_at | n_contributions | |
|---|---|---|
| 6 | 2019-06-27 | 23 |
| 5 | 2019-05-04 | 17 |
| 1 | 2019-03-02 | 2 |
| 2 | 2019-03-03 | 2 |
| 4 | 2019-03-15 | 2 |
| 0 | 2019-02-23 | 1 |
| 3 | 2019-03-04 | 1 |
Check wether the users with the most contributions are mod, gold or having a verified email¶
df.author.value_counts().nlargest(n=25)
-banned- 4487 AutoModerator 426 CelebBattleVoteBot 120 spells010 80 Dannig178 70 5th_Law_of_Robotics 68 newsfeedmedia 62 SakuOtaku 57 Sovetika 48 bufedad 43 DerHander 41 RuleIV 40 guac_boi1 36 AutoNewsAdmin 36 AutoNewspaperAdmin 34 Pixelated_Piracy 34 InfiniTitans 32 majortom106 30 bitcoinwallpaper2 30 sweetestdeth 30 juanathanluis 30 Rednaxela117 28 reignkaera 28 GRJR721 26 HawkofDarkness 26 Name: author, dtype: int64
check_list = df.author.value_counts().nlargest(n=25).index.tolist()[1:]
set(check_list)
{'5th_Law_of_Robotics',
'AutoModerator',
'AutoNewsAdmin',
'AutoNewspaperAdmin',
'CelebBattleVoteBot',
'Dannig178',
'DerHander',
'GRJR721',
'HawkofDarkness',
'InfiniTitans',
'Pixelated_Piracy',
'Rednaxela117',
'RuleIV',
'SakuOtaku',
'Sovetika',
'bitcoinwallpaper2',
'bufedad',
'guac_boi1',
'juanathanluis',
'majortom106',
'newsfeedmedia',
'reignkaera',
'spells010',
'sweetestdeth'}
# get a data frame with the most negative-comments users
df_check = df_users[df_users['user_name'].isin(check_list)]
print(df_check.shape)
df_check.head(2)
(24, 10)
| user_name | has_verified_email | is_mod | is_gold | is_banned | comment_karma | link_karma | user_created_at | banned_unverified | creation_year | |
|---|---|---|---|---|---|---|---|---|---|---|
| 3937 | GRJR721 | True | True | False | False | 891.0 | 167792.0 | 2011-11-15 20:48:23 | others | others |
| 4432 | AutoModerator | True | True | True | False | 1000.0 | 1000.0 | 2012-01-05 05:24:28 | others | others |
df_check['user_name'].nunique()
24
def get_stats(df):
for col in df.columns:
if col not in ['user_name', 'user_created_at']:
if col not in ['link_karma', 'comment_karma']:
print('The value counts of the users with the most contributions: ' + col)
print(df_check[col].value_counts())
print('\n')
else:
print("The min of {}".format(col), round(df_check[col].min(),2))
print('\n')
print("The max of {}".format(col), round(df_check[col].max(),2))
print('\n')
print("The mean of {}".format(col), round(df_check[col].mean(),2))
print('\n')
print("The median of {}".format(col), round(df_check[col].mean(),2))
print('\n')
get_stats(df_check)
The value counts of the users with the most contributions: has_verified_email True 23 False 1 Name: has_verified_email, dtype: int64 The value counts of the users with the most contributions: is_mod True 16 False 8 Name: is_mod, dtype: int64 The value counts of the users with the most contributions: is_gold False 20 True 4 Name: is_gold, dtype: int64 The value counts of the users with the most contributions: is_banned False 23 True 1 Name: is_banned, dtype: int64 The min of comment_karma 0.0 The max of comment_karma 155384.0 The mean of comment_karma 29462.35 The median of comment_karma 29462.35 The min of link_karma 1.0 The max of link_karma 982410.0 The mean of link_karma 133463.65 The median of link_karma 133463.65 The value counts of the users with the most contributions: banned_unverified others 22 unverified 1 banned 1 Name: banned_unverified, dtype: int64 The value counts of the users with the most contributions: creation_year others 17 2018 3 2019 3 banned 1 Name: creation_year, dtype: int64
# pd.set_option('display.max_colwidth', None)
suspected_dict = {}
df_fuc = df[df.text.str.lower().str.contains('fuck')]
print(df_fuc.shape)
df_fuc.head()
(1254, 17)
| child_id | permalink | text | parent_id | subreddit | author | created_at | sentiment_blob | sentiment_nltk | score | top_level | submission_comment | text_words | submission_text | submission_words | urls | urls_count | |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 26 | t1_eczrb8l | /r/JerkOffToCelebs/comments/abeu1p/i_cant_stop... | Fucking same dude, her tits were the best part... | t3_abeu1p | r/JerkOffToCelebs | -banned- | 2019-01-01 04:23:22 | Positive | Neutral | 20.0 | submission | comment | 12 | i_cant_stop_cumming_to_amber_heard_after_seeing | 9 | [] | 0 |
| 33 | t1_eczsup6 | /r/DC_Cinematic/comments/abc2ip/other_amber_he... | Suuure, keep believing her bullshit. A picture... | t1_eczrlhn | r/DC_Cinematic | Tedinasuit | 2019-01-01 04:51:41 | Negative | Negative | 4.0 | comment | comment | 69 | DC_Cinematic | 2 | [] | 0 |
| 48 | t1_eczwpte | /r/JerkOffToCelebs/comments/abeu1p/i_cant_stop... | I’m in the same boat as you, she looked fuckin... | t3_abeu1p | r/JerkOffToCelebs | -banned- | 2019-01-01 06:04:50 | Positive | Positive | 5.0 | submission | comment | 11 | i_cant_stop_cumming_to_amber_heard_after_seeing | 9 | [] | 0 |
| 55 | t1_ed00x21 | /r/DC_Cinematic/comments/abc2ip/other_amber_he... | She’s been arrested for domestic violence agai... | t1_eczv03v | r/DC_Cinematic | mich_m | 2019-01-01 07:37:27 | Negative | Neutral | 15.0 | comment | comment | 28 | DC_Cinematic | 2 | [] | 0 |
| 140 | t1_ed3ljqt | /r/pickoneceleb/comments/ab8072/gal_gadot_ambe... | Margot. \n\nIn order from left to right I woul... | t3_ab8072 | r/pickoneceleb | juanathanluis | 2019-01-02 20:21:41 | Positive | Neutral | 3.0 | submission | comment | 12 | gal_gadot_amber_heard_or_margot_robbie_describe | 8 | [] | 0 |
# get the authors of these submissions having the same submission text
mask = (df['submission_text'] == 'fuck_amber_heard') & (df['submission_comment'] == 'submission')
df_sub = df[mask]
print(df_sub.shape)
with pd.option_context('display.max_colwidth', None):
display(df_sub.head())
(1, 17)
| child_id | permalink | text | parent_id | subreddit | author | created_at | sentiment_blob | sentiment_nltk | score | top_level | submission_comment | text_words | submission_text | submission_words | urls | urls_count | |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 4681 | t3_b0mh5c | /r/rant/comments/b0mh5c/fuck_amber_heard/ | Fuck Amber Heard | NaN | r/rant | -banned- | 2019-03-13 14:13:33 | Negative | Negative | 0.0 | NaN | submission | 3 | fuck_amber_heard | 3 | [] | 0 |
# get the authors of these submissions having the same submission text
mask = (df['submission_text'].str.contains('fuck')) & (df['submission_comment'] == 'submission')
df_sub_fuc = df[mask]
print(df_sub_fuc.shape)
with pd.option_context('display.max_colwidth', None):
display(df_sub_fuc.head())
(37, 17)
| child_id | permalink | text | parent_id | subreddit | author | created_at | sentiment_blob | sentiment_nltk | score | top_level | submission_comment | text_words | submission_text | submission_words | urls | urls_count | |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 261 | t3_aco2tz | /r/JerkOffToCelebs/comments/aco2tz/id_give_a_lot_to_fuck_amber_heard_doggy_style_on/ | I’d give a lot to fuck Amber Heard doggy style on that beach | NaN | r/JerkOffToCelebs | Count_Fapula1 | 2019-01-04 23:26:38 | Negative | Negative | 46.0 | NaN | submission | 13 | id_give_a_lot_to_fuck_amber_heard_doggy_style_on | 11 | [] | 0 |
| 825 | t3_airyf8 | /r/JerkOffToCelebs/comments/airyf8/amber_heard_is_fucking_hot/ | Amber Heard is fucking hot | NaN | r/JerkOffToCelebs | -banned- | 2019-01-22 21:43:12 | Positive | Neutral | 1.0 | NaN | submission | 5 | amber_heard_is_fucking_hot | 5 | [] | 0 |
| 1124 | t3_aksanw | /r/JerkOffToCelebs/comments/aksanw/dc_ladies_battle_would_you_rather_fuck_gal_gadot/ | DC Ladies battle. Would you rather fuck Gal Gadot, Margot Robbie, Amber Heard Or Amy Adams? | NaN | r/JerkOffToCelebs | -banned- | 2019-01-28 21:26:59 | Negative | Negative | 55.0 | NaN | submission | 16 | dc_ladies_battle_would_you_rather_fuck_gal_gadot | 9 | [] | 0 |
| 2262 | t3_ar5k1d | /r/JerkOffToCelebs/comments/ar5k1d/amber_heard_is_so_fuckable/ | Amber Heard is so fuckable | NaN | r/JerkOffToCelebs | -banned- | 2019-02-16 05:04:05 | Neutral | Neutral | 182.0 | NaN | submission | 5 | amber_heard_is_so_fuckable | 5 | [] | 0 |
| 3643 | t3_ax1ds1 | /r/teenagers/comments/ax1ds1/seriously_fuck_amber_heard/ | Seriously Fuck Amber Heard | NaN | r/teenagers | -banned- | 2019-03-04 01:44:30 | Negative | Negative | 6.0 | NaN | submission | 4 | seriously_fuck_amber_heard | 4 | [] | 0 |
df_sub_fuc_contributions = df_sub_fuc.groupby(df_sub_fuc.created_at.dt.date).size().reset_index(name='n_contributions')
fig = px.bar(df_sub_fuc_contributions,
x='created_at',
y='n_contributions', title='The number of submissions with the word "F*CK" in 2019')
fig.update_traces(marker_color='red', marker_line_width=.5, opacity=1, textposition='auto')
# , marker_line_color='#5296dd'
fig.show()
df_sub_fuc_contributions.sort_values('n_contributions', ascending=False)
| created_at | n_contributions | |
|---|---|---|
| 22 | 2019-11-01 | 4 |
| 6 | 2019-03-24 | 3 |
| 9 | 2019-05-14 | 2 |
| 0 | 2019-01-04 | 1 |
| 17 | 2019-08-21 | 1 |
| 29 | 2019-12-21 | 1 |
| 28 | 2019-12-17 | 1 |
| 27 | 2019-12-01 | 1 |
| 26 | 2019-11-26 | 1 |
| 25 | 2019-11-19 | 1 |
| 24 | 2019-11-09 | 1 |
| 23 | 2019-11-04 | 1 |
| 21 | 2019-10-14 | 1 |
| 20 | 2019-10-10 | 1 |
| 19 | 2019-10-09 | 1 |
| 18 | 2019-10-07 | 1 |
| 15 | 2019-08-19 | 1 |
| 16 | 2019-08-20 | 1 |
| 1 | 2019-01-22 | 1 |
| 14 | 2019-08-09 | 1 |
| 13 | 2019-08-08 | 1 |
| 12 | 2019-08-07 | 1 |
| 11 | 2019-06-03 | 1 |
| 10 | 2019-05-30 | 1 |
| 8 | 2019-05-12 | 1 |
| 7 | 2019-05-10 | 1 |
| 5 | 2019-03-13 | 1 |
| 4 | 2019-03-04 | 1 |
| 3 | 2019-02-16 | 1 |
| 2 | 2019-01-28 | 1 |
| 30 | 2019-12-28 | 1 |
df_fuc.author.value_counts().head(10)
-banned- 258 juanathanluis 11 armoured_bobandi 9 Ryggg95 7 SexBoi6969 6 flightfight1 5 ForensicatingEdibles 5 xRisingSunx 5 pervaccount123 5 funlover24 4 Name: author, dtype: int64
df_fuc.submission_comment.value_counts()
comment 1204 submission 50 Name: submission_comment, dtype: int64
df_fuc.subreddit.value_counts().head(10)
r/movies 198 r/JerkOffToCelebs 185 r/CelebEconomy 140 r/entertainment 138 r/MensRights 82 r/pussypassdenied 61 r/worldnews 60 r/television 31 r/WatchItForThePlot 26 r/gentlemanboners 25 Name: subreddit, dtype: int64
df_fuc.created_at.dt.date.value_counts().head(10)
2019-03-15 189 2019-03-14 99 2019-03-13 81 2019-03-16 44 2019-08-03 25 2019-03-04 22 2019-03-03 20 2019-06-25 19 2019-03-24 19 2019-07-11 18 Name: created_at, dtype: int64
df_fuc_contributions = df_fuc.groupby(df_fuc.created_at.dt.date).size().reset_index(name='n_contributions')
fig = px.bar(df_fuc_contributions,
x='created_at',
y='n_contributions', title='The number of "F*CK" contributions in 2019')
fig.update_traces(marker_color='red', marker_line_width=1, opacity=1, textposition='auto')
# , marker_line_color='#5296dd'
fig.show()
df_fuc_contributions.sort_values('n_contributions', ascending=False).head(10)
| created_at | n_contributions | |
|---|---|---|
| 43 | 2019-03-15 | 189 |
| 42 | 2019-03-14 | 99 |
| 41 | 2019-03-13 | 81 |
| 44 | 2019-03-16 | 44 |
| 143 | 2019-08-03 | 25 |
| 36 | 2019-03-04 | 22 |
| 35 | 2019-03-03 | 20 |
| 51 | 2019-03-24 | 19 |
| 114 | 2019-06-25 | 19 |
| 123 | 2019-07-11 | 18 |
used the word f*ck 11 times
Negative Comments
df_juan = df.query(" author == 'juanathanluis' ")
print(df_juan.shape)
df_juan.head()
(30, 17)
| child_id | permalink | text | parent_id | subreddit | author | created_at | sentiment_blob | sentiment_nltk | score | top_level | submission_comment | text_words | submission_text | submission_words | urls | urls_count | |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 140 | t1_ed3ljqt | /r/pickoneceleb/comments/ab8072/gal_gadot_ambe... | Margot. \n\nIn order from left to right I woul... | t3_ab8072 | r/pickoneceleb | juanathanluis | 2019-01-02 20:21:41 | Positive | Neutral | 3.0 | submission | comment | 12 | gal_gadot_amber_heard_or_margot_robbie_describe | 8 | [] | 0 |
| 506 | t1_edk2duj | /r/TrueFMK/comments/adrm64/dcmarvel_superbabes... | KMF\n\nGal is overrated. | t3_adrm64 | r/TrueFMK | juanathanluis | 2019-01-08 12:54:21 | Neutral | Neutral | 2.0 | submission | comment | 4 | dcmarvel_superbabes_gal_gadot_brie_larson_amber | 7 | [] | 0 |
| 1051 | t1_ef6o7zd | /r/TrueFMK/comments/ako0za/amber_heard_gal_gad... | FKM\n\nF - she’s hotter than Gal. Don’t @ me. ... | t3_ako0za | r/TrueFMK | juanathanluis | 2019-01-28 16:56:03 | Positive | Neutral | 49.0 | submission | comment | 23 | amber_heard_gal_gadot_margot_robbie | 6 | [] | 0 |
| 1105 | t1_ef79dwl | /r/TrueFMK/comments/ako0za/amber_heard_gal_gad... | Not sure if you’re aware, but Margot looks pre... | t1_ef78j4w | r/TrueFMK | juanathanluis | 2019-01-28 20:28:53 | Positive | Neutral | 4.0 | comment | comment | 12 | amber_heard_gal_gadot_margot_robbie | 6 | [] | 0 |
| 1107 | t1_ef79kjo | /r/TrueFMK/comments/ako0za/amber_heard_gal_gad... | They’re in the DC Cinematic Universe. Mera in ... | t1_ef71d6b | r/TrueFMK | juanathanluis | 2019-01-28 20:30:46 | Neutral | Neutral | 7.0 | comment | comment | 14 | amber_heard_gal_gadot_margot_robbie | 6 | [] | 0 |
df_juan.created_at.dt.date.value_counts()
2019-01-28 3 2019-02-22 3 2019-04-15 2 2019-03-25 2 2019-10-07 2 2019-10-05 2 2019-12-10 1 2019-01-08 1 2019-10-11 1 2019-06-28 1 2019-06-17 1 2019-01-02 1 2019-05-22 1 2019-01-31 1 2019-10-16 1 2019-08-30 1 2019-08-03 1 2019-05-01 1 2019-06-25 1 2019-06-26 1 2019-02-01 1 2019-10-27 1 Name: created_at, dtype: int64
df_juan.subreddit.value_counts()
r/CelebEconomy 13 r/pickoneceleb 8 r/TrueFMK 7 r/JerkOffToCelebs 1 r/CelebAssPussyMouth 1 Name: subreddit, dtype: int64
df_juan.text.value_counts().head(3)
Anal - Taylor because she needs a rough fuck. \n\nBlowjob - Cameron because she’s got nice lips. \n\nTitfuck - Eva, [obviously](https://gfycat.com/ForkedCaringFirefly). \n\nDoggystyle - Emilia, to recreate [this scene](https://gfycat.com/lawfulsneakygermanspitz). \n\nMissionary - Amber because she’s beautifully bland. \n\nBDSM - Zoe because she’s a strong woman who would be a good dom. \n\nPussy eating - Jennifer Lawrence because her and Emma are the last ones left and i want to rawdog Emma. \n\nRawdog - Emma because I love her and wouldn’t mind impregnating her. 2 **Lili Reinhart** (5) Eat her out (2) = $10\n\n**Eiza Gonzalez** (10) Doggystyle and creampie (3) = $30\n\n**Alexandra Daddario** (20) Cowgirl and creampie (3) = $60 1 Great post OP. \n\n1. Emma Watson just so I can listen to the British accent. \n\n2. Bella Thorne because she’s trashy. \n\n3. Amber Heard and Kay Dennings because why not. \n\n4. Megan Fox. Shrugs. \n\n5. Brie Larson because I probably won’t be to turned on by her. \n\n6. Victoria Justice and I would date her long term before leaving her for Ana de Armas. \n\n7. Kate Beckinsale, Jennifer Lawrence, Blake Lively. I skipped this one and did it last. These were the three remaining girls. I’m pretty happy about it being these three. \n\n8. Mary Elizabeth Winstead because she was my number two choice for 10. \n\n9. Katy Perry and Taylor Swift because their enemies and I want them to fight over me. \n\n10. Ana de Armas because i am in love with her. 1 Name: text, dtype: int64
df_users[df_users.user_name == 'juanathanluis']
| user_name | has_verified_email | is_mod | is_gold | is_banned | comment_karma | link_karma | user_created_at | banned_unverified | creation_year | |
|---|---|---|---|---|---|---|---|---|---|---|
| 20670 | juanathanluis | True | True | False | False | 24502.0 | 92265.0 | 2015-12-05 21:18:19 | others | others |
df.text.value_counts().head(25)
Amber Heard 1832 [deleted] 645 [removed] 233 **Thank you for your submission. Make sure to follow the rules.**\n\n**Don't forget to follow us on [Instagram](https://www.instagram.com/jotocelebs/) and [join our Discord Server](https://discord.gg/PrRFWsa)!**\n\n\n*I am a bot, and this action was performed automatically. Please [contact the moderators of this subreddit](/message/compose/?to=/r/JerkOffToCelebs) if you have any questions or concerns.* 64 Remember to keep comments civil.\n\n**[Follow our Instagram page](https://www.instagram.com/celebtag/) for more celebrity content and daily top posts!**\n\n\n*I am a bot, and this action was performed automatically. Please [contact the moderators of this subreddit](/message/compose/?to=/r/Celebhub) if you have any questions or concerns.* 59 **Thank you for your submission. Make sure to follow the rules.**\n\n**Check out our [FAP LOTTERY!](https://jerkofftocelebs.com/)**\n\n**Don't forget to follow us on [Instagram](https://www.instagram.com/jotocelebs/) and [join our Discord Server](https://discord.gg/PrRFWsa)!**\n\n\n*I am a bot, and this action was performed automatically. Please [contact the moderators of this subreddit](/message/compose/?to=/r/JerkOffToCelebs) if you have any questions or concerns.* 54 KMF 53 FKM 52 Amber 47 FMK 45 KFM 42 **Thank you for your submission. Make sure to follow the rules.**\n\n**Check out our [NEW FAP LOTTERY!](https://jerkofftocelebs.com/)**\n\n**Don't forget to follow us on [Instagram](https://www.instagram.com/jotocelebs/) and [join our Discord Server](https://discord.gg/PrRFWsa)!**\n\n\n*I am a bot, and this action was performed automatically. Please [contact the moderators of this subreddit](/message/compose/?to=/r/JerkOffToCelebs) if you have any questions or concerns.* 40 MKF 39 MFK 38 Amber heard 38 Margot 33 Johnny Depp was abused by ex-wife Amber Heard, new evidence shows 29 Gal 23 Amber Heard - The Informers 19 Amber Heard in The Informers 17 Make sure to follow our community guidelines.\n\n**[Get user flair](https://redd.it/e0a4mn) and [check out our Instagram page](https://www.instagram.com/celebtag/) for more celebrity content!**\n\n\n*I am a bot, and this action was performed automatically. Please [contact the moderators of this subreddit](/message/compose/?to=/r/Celebhub) if you have any questions or concerns.* 17 Scarlett 17 [Aquaman] Amber Heard 14 Fmk 14 Your comment has been removed due to your account not meeting the required (> 7 day old) limit necessary to post here\n\n*I am a bot, and this action was performed automatically. Please [contact the moderators of this subreddit](/message/compose/?to=/r/JerkOffToCelebs) if you have any questions or concerns.* 13 Name: text, dtype: int64
Notes:
There are a lot of weired textes repeated a lot like:
KFM.
"Well I'm going to start doing preliminary emails to voice my displeasure that a DV perp is even coming back to make more millions.\n\nAnd I won't be watching that shit or buying it either\n\nEdit: ok so this is who I emailed\n\njessica.zacholl@warnerbros.com\n\nShe's in WB's Media and Press Dept.\n\nAnd this is what I said \n\nSubject: Amber Heard in Aquaman 2, why?\n\nJust curious why a studio such as WB would employ a domestic violence perpetrator for their big release? I've been told Hollywood is progressive, but apparently you can abuse your spouse and that's ok? Well I will not be seeing this movie. I get so tired of the talking about how domestic violence is bad, but it seems all of the movie industry just sits silent. #MeToo indeed."
text = "Amber Heard".lower()
df_amber = df[df.text.str.lower().str.contains(text)]
print(df_amber.shape)
with pd.option_context('display.max_colwidth', None):
display(df_amber.head())
(4641, 17)
| child_id | permalink | text | parent_id | subreddit | author | created_at | sentiment_blob | sentiment_nltk | score | top_level | submission_comment | text_words | submission_text | submission_words | urls | urls_count | |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 20 | t3_abeu1p | /r/JerkOffToCelebs/comments/abeu1p/i_cant_stop_cumming_to_amber_heard_after_seeing/ | I can't stop cumming to Amber Heard after seeing her in Aquaman | NaN | r/JerkOffToCelebs | jackstave | 2019-01-01 04:15:42 | Neutral | Positive | 130.0 | NaN | submission | 12 | i_cant_stop_cumming_to_amber_heard_after_seeing | 9 | [] | 0 |
| 38 | t3_abfc1j | /r/goddesses/comments/abfc1j/amber_heard/ | Amber Heard | NaN | r/goddesses | latimeriachalumnae | 2019-01-01 05:20:39 | Neutral | Neutral | 222.0 | NaN | submission | 2 | amber_heard | 2 | [] | 0 |
| 39 | t3_abfcjd | /r/Celebs/comments/abfcjd/amber_heard/ | Amber Heard | NaN | r/Celebs | latimeriachalumnae | 2019-01-01 05:22:16 | Neutral | Neutral | 268.0 | NaN | submission | 2 | amber_heard | 2 | [] | 0 |
| 46 | t3_abfjpu | /r/Amber_Heard/comments/abfjpu/all_amber_heard_scenes_on_never_back_down/ | All Amber Heard Scenes On Never Back Down | NaN | r/Amber_Heard | Devilnomi | 2019-01-01 05:48:38 | Negative | Neutral | 1.0 | NaN | submission | 8 | Amber_Heard | 2 | [] | 0 |
| 59 | t3_abgjob | /r/JerkOffToCelebs/comments/abgjob/just_watched_aquaman_and_it_got_me_thinking_about/ | Just watched Aquaman and it got me thinking about Amber Heard | NaN | r/JerkOffToCelebs | NOTXnxxstaff | 2019-01-01 08:21:12 | Neutral | Neutral | 546.0 | NaN | submission | 11 | just_watched_aquaman_and_it_got_me_thinking_about | 9 | [] | 0 |
df_amber.subreddit.value_counts()
r/Celebs 532
r/gentlemanboners 317
r/JerkOffToCelebs 271
r/Celebhub 222
r/CelebBattles 140
...
r/redrising 1
r/Elsas 1
r/NSFWBOX 1
r/blueeyedgirls 1
r/autotldr 1
Name: subreddit, Length: 531, dtype: int64
df_amber.author.value_counts().head(10)
-banned- 1396 spells010 80 Dannig178 67 newsfeedmedia 62 CelebBattleVoteBot 55 Sovetika 48 AutoNewsAdmin 36 AutoNewspaperAdmin 34 bitcoinwallpaper2 30 DerHander 30 Name: author, dtype: int64
df_users.query("user_name in ['spells010', 'Dannig178']")
| user_name | has_verified_email | is_mod | is_gold | is_banned | comment_karma | link_karma | user_created_at | banned_unverified | creation_year | |
|---|---|---|---|---|---|---|---|---|---|---|
| 13888 | Dannig178 | True | True | True | False | 2765.0 | 982410.0 | 2014-05-14 14:35:40 | others | others |
| 50713 | spells010 | True | False | False | False | 0.0 | 1.0 | 2019-07-31 04:00:33 | others | 2019 |
text1 = "fmk"
text2 = 'fkm'
text3 = "mfk"
text4 = 'kfm'
df_fmk = df[(df.text.str.lower().str.contains(text1)) |
(df.text.str.lower().str.contains(text2)) |
(df.text.str.lower().str.contains(text3)) |
(df.text.str.lower().str.contains(text4))]
print(df_fmk.shape)
with pd.option_context('display.max_colwidth', None):
display(df_fmk.head())
(311, 17)
| child_id | permalink | text | parent_id | subreddit | author | created_at | sentiment_blob | sentiment_nltk | score | top_level | submission_comment | text_words | submission_text | submission_words | urls | urls_count | |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 483 | t1_edjnjw0 | /r/TrueFMK/comments/adrm64/dcmarvel_superbabes_gal_gadot_brie_larson_amber/edjnjw0/ | Thanks for your post /u/Pillowcasetalk123. Remember to RATE YOUR OWN POST, and do not delete it within 30 days. First offense gets a warning, repeat offenses may result in a ban. Please limit new submissions to five per day.\n\n*I am a bot, and this action was performed automatically. Please [contact the moderators of this subreddit](/message/compose/?to=/r/TrueFMK) if you have any questions or concerns.* | t3_adrm64 | r/TrueFMK | AutoModerator | 2019-01-08 06:48:02 | Positive | Neutral | 1.0 | submission | comment | 63 | dcmarvel_superbabes_gal_gadot_brie_larson_amber | 7 | [] | 0 |
| 487 | t1_edjo84a | /r/TrueFMK/comments/adrm64/dcmarvel_superbabes_gal_gadot_brie_larson_amber/edjo84a/ | **Here are the FMK tallies so far (bot v2):** \n \n||1|2|3\n:-:|:-:|:-:|:-:\n**F**|26% (9)|32% (11)|41% (14)|\n **M**|47% (16)|20% (7)|32% (11)|\n **K**|26% (9)|47% (16)|26% (9)|\n \n\nTotal Votes: 34 \| Last Updated: 2019-01-15T14:47:03+0000\n\nVote by including the three letters at the start of a top level comment. This tally updates every 15 minutes, and stops updating when the submission is 7 days old. | t3_adrm64 | r/TrueFMK | FMKBot | 2019-01-08 07:01:10 | Positive | Positive | 2.0 | submission | comment | 60 | dcmarvel_superbabes_gal_gadot_brie_larson_amber | 7 | [] | 0 |
| 488 | t1_edjo90l | /r/TrueFMK/comments/adrm64/dcmarvel_superbabes_gal_gadot_brie_larson_amber/edjo90l/ | KFM on this pic and the eyes/hair. Ambers boobs made an appearance in my calculations as well. I am only sure about M though. That unrealistic red hair with blue eyes combo is my weakness. Just like the recent WWE post. | t3_adrm64 | r/TrueFMK | PM_ME_UR_PIG-TAILS | 2019-01-08 07:01:40 | Neutral | Neutral | 3.0 | submission | comment | 41 | dcmarvel_superbabes_gal_gadot_brie_larson_amber | 7 | [] | 0 |
| 502 | t1_edjxpsc | /r/TrueFMK/comments/adrm64/dcmarvel_superbabes_gal_gadot_brie_larson_amber/edjxpsc/ | Fmk | t3_adrm64 | r/TrueFMK | throwedrollss | 2019-01-08 11:05:02 | Neutral | Neutral | 1.0 | submission | comment | 1 | dcmarvel_superbabes_gal_gadot_brie_larson_amber | 7 | [] | 0 |
| 515 | t1_edk65sc | /r/TrueFMK/comments/adrm64/dcmarvel_superbabes_gal_gadot_brie_larson_amber/edk65sc/ | FMK\n\nF - thanks to Natalie Portman before her, I have a thing for /r/JewishGoddesses, toned, tall brunette\n\nM - I am growing to like her. I like the smirk. Great body. Like her open/round eyes.\n\nK - crazy, the unrealistic hair color mehs her for me, boobs aren't much different from Brie's | t3_adrm64 | r/TrueFMK | naedthrowaway | 2019-01-08 13:59:40 | Negative | Positive | 3.0 | submission | comment | 53 | dcmarvel_superbabes_gal_gadot_brie_larson_amber | 7 | [] | 0 |
df_fmk.author.value_counts().head(20)
-banned- 23 AutoModerator 21 FMKBot 11 billysuperduper 6 naedthrowaway 6 throwedrollss 6 MerlinRD 5 PM_ME_UR_PIG-TAILS 5 Narfle_TheGarthok 5 herkalurk 5 GrotAcc 4 sullima2014 4 sirentdead 4 OrangePaper300 4 dklement 4 rotten_person 4 smithjason151 3 A_Tribute_For_You 3 zorbathegrate 3 DarthVilgrath101 3 Name: author, dtype: int64
fmk_list = ['AutoModerator', 'FMKBot']
fmk_list
['AutoModerator', 'FMKBot']
df_users[df_users['user_name'].isin(fmk_list)]
| user_name | has_verified_email | is_mod | is_gold | is_banned | comment_karma | link_karma | user_created_at | banned_unverified | creation_year | |
|---|---|---|---|---|---|---|---|---|---|---|
| 4432 | AutoModerator | True | True | True | False | 1000.0 | 1000.0 | 2012-01-05 05:24:28 | others | others |
| 32799 | FMKBot | True | True | False | False | 59182.0 | 1.0 | 2017-11-09 15:49:31 | others | others |
df_fmk_contributions = df_fmk.groupby(df_fmk.created_at.dt.date).size().reset_index(name='n_contributions')
fig = px.bar(df_fmk_contributions,
x='created_at',
y='n_contributions', title='The number of "FMK, KFM ..etc" contributions in 2019')
fig.update_traces(marker_color='red', marker_line_width=0.5, opacity=1, textposition='auto')
# , marker_line_color='#5296dd'
fig.show()
text = "fuck amber heard"
df_fuc2 = df[df.text.str.lower().str.contains(text)]
print(df_fuc2.shape)
with pd.option_context('display.max_colwidth', None):
display(df_fuc2.head())
(32, 17)
| child_id | permalink | text | parent_id | subreddit | author | created_at | sentiment_blob | sentiment_nltk | score | top_level | submission_comment | text_words | submission_text | submission_words | urls | urls_count | |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 261 | t3_aco2tz | /r/JerkOffToCelebs/comments/aco2tz/id_give_a_lot_to_fuck_amber_heard_doggy_style_on/ | I’d give a lot to fuck Amber Heard doggy style on that beach | NaN | r/JerkOffToCelebs | Count_Fapula1 | 2019-01-04 23:26:38 | Negative | Negative | 46.0 | NaN | submission | 13 | id_give_a_lot_to_fuck_amber_heard_doggy_style_on | 11 | [] | 0 |
| 2554 | t1_ehcjp3k | /r/JerkOffToCelebs/comments/av4nm5/imagine_a_threesome_with_amber_heard_and_nicole/ehcjp3k/ | Yep. I definitely want to do that. I'd do anything to have a chance to fuck Amber Heard. Wouldn't say no to Nicole Kidman either. She's a crazy hot milf | t3_av4nm5 | r/JerkOffToCelebs | -banned- | 2019-02-26 21:18:28 | Negative | Neutral | 7.0 | submission | comment | 30 | imagine_a_threesome_with_amber_heard_and_nicole | 8 | [] | 0 |
| 3643 | t3_ax1ds1 | /r/teenagers/comments/ax1ds1/seriously_fuck_amber_heard/ | Seriously Fuck Amber Heard | NaN | r/teenagers | -banned- | 2019-03-04 01:44:30 | Negative | Negative | 6.0 | NaN | submission | 4 | seriously_fuck_amber_heard | 4 | [] | 0 |
| 4681 | t3_b0mh5c | /r/rant/comments/b0mh5c/fuck_amber_heard/ | Fuck Amber Heard | NaN | r/rant | -banned- | 2019-03-13 14:13:33 | Negative | Negative | 0.0 | NaN | submission | 3 | fuck_amber_heard | 3 | [] | 0 |
| 4763 | t1_eifp4ld | /r/WeinsteinEffect/comments/b0h5wa/why_some_people_are_uncanceling_johnny_depp_in/eifp4ld/ | FUCK Amber Heard. She's the epitome of the enemy of \#MeToo. I'm going to pirate Aquaman just because of her. | t3_b0h5wa | r/WeinsteinEffect | _Not_Bruce_Wayne_ | 2019-03-13 15:32:55 | Negative | Negative | 0.0 | submission | comment | 20 | why_some_people_are_uncanceling_johnny_depp_in | 8 | [] | 0 |
df_fuc2.author.value_counts()
-banned- 10 ADM86 2 RossSkyWalkerr 2 orton41290 1 BeefStrykker 1 flightfight1 1 Ninja_Arena 1 Jacknatureboy 1 Willkthewpboy 1 selenakyleprrrr 1 Count_Fapula1 1 Sayena08 1 MeC0195 1 nodeofollie 1 Tramm 1 BiggerDamnederHeroer 1 _Not_Bruce_Wayne_ 1 Iconoficons 1 Inshabel 1 sev1nk 1 KFBR392GoForGrubes 1 Name: author, dtype: int64
df_fuc2.subreddit.value_counts()
r/JerkOffToCelebs 11 r/movies 5 r/MensRights 4 r/nsfwcelebs 2 r/television 2 r/rant 1 r/teenagers 1 r/gentlemanboners 1 r/Feminism 1 r/pics 1 r/JordanPeterson 1 r/entertainment 1 r/WeinsteinEffect 1 Name: subreddit, dtype: int64
df_fuc2.subreddit.value_counts();
df_fuc2_submissions = df_fuc2.query(" submission_comment == 'submission' ")
print(df_fuc2_submissions.shape)
df_fuc2_submissions.head()
(11, 17)
| child_id | permalink | text | parent_id | subreddit | author | created_at | sentiment_blob | sentiment_nltk | score | top_level | submission_comment | text_words | submission_text | submission_words | urls | urls_count | |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 261 | t3_aco2tz | /r/JerkOffToCelebs/comments/aco2tz/id_give_a_l... | I’d give a lot to fuck Amber Heard doggy style... | NaN | r/JerkOffToCelebs | Count_Fapula1 | 2019-01-04 23:26:38 | Negative | Negative | 46.0 | NaN | submission | 13 | id_give_a_lot_to_fuck_amber_heard_doggy_style_on | 11 | [] | 0 |
| 3643 | t3_ax1ds1 | /r/teenagers/comments/ax1ds1/seriously_fuck_am... | Seriously Fuck Amber Heard | NaN | r/teenagers | -banned- | 2019-03-04 01:44:30 | Negative | Negative | 6.0 | NaN | submission | 4 | seriously_fuck_amber_heard | 4 | [] | 0 |
| 4681 | t3_b0mh5c | /r/rant/comments/b0mh5c/fuck_amber_heard/ | Fuck Amber Heard | NaN | r/rant | -banned- | 2019-03-13 14:13:33 | Negative | Negative | 0.0 | NaN | submission | 3 | fuck_amber_heard | 3 | [] | 0 |
| 19596 | t3_co10uf | /r/JerkOffToCelebs/comments/co10uf/how_will_yo... | How will you fuck Amber Heard? | NaN | r/JerkOffToCelebs | -banned- | 2019-08-09 11:23:21 | Negative | Negative | 120.0 | NaN | submission | 6 | how_will_you_fuck_amber_heard | 6 | [] | 0 |
| 19884 | t3_csuwis | /r/Feminism/comments/csuwis/fuck_amber_heard_f... | Fuck Amber Heard for giving Feminism a bad nam... | NaN | r/Feminism | -banned- | 2019-08-20 08:23:29 | Negative | Neutral | 1.0 | NaN | submission | 21 | fuck_amber_heard_for_giving_feminism_a_bad_name | 9 | [] | 0 |
df_fuc2_submissions.author.value_counts()
-banned- 6 RossSkyWalkerr 2 Count_Fapula1 1 flightfight1 1 Jacknatureboy 1 Name: author, dtype: int64
text = "[Aquaman] Amber Heard".lower()
df_aqua = df[df.text.str.lower().str.contains(text)]
print(df_aqua.shape)
with pd.option_context('display.max_colwidth', None):
display(df_aqua.head())
(115, 17)
| child_id | permalink | text | parent_id | subreddit | author | created_at | sentiment_blob | sentiment_nltk | score | top_level | submission_comment | text_words | submission_text | submission_words | urls | urls_count | |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 362 | t3_adjb6m | /r/celebJObuds/comments/adjb6m/anyone_down_for_an_amber_heard_joi_or_rp/ | Anyone down for an Amber Heard Joi or RP? | NaN | r/celebJObuds | -banned- | 2019-01-07 16:29:01 | Negative | Neutral | 1.0 | NaN | submission | 9 | anyone_down_for_an_amber_heard_joi_or_rp | 9 | [] | 0 |
| 728 | t1_ee9aycj | /r/JerkOffToCelebs/comments/agm8rd/amber_heard_from_the_rear_where_would_you_cum_on/ee9aycj/ | Gonna have to bury my cock in Amber Heards ass and unload my balls in it. The tightness of Amber's butthole would feel so good on my throbbing cock | t3_agm8rd | r/JerkOffToCelebs | MelissaBenoistQueen | 2019-01-17 07:11:35 | Positive | Neutral | 2.0 | submission | comment | 29 | amber_heard_from_the_rear_where_would_you_cum_on | 10 | [] | 0 |
| 995 | t3_ak1jmn | /r/CelebAssPussyMouth/comments/ak1jmn/apm_amber_heard_kate_upton_and_sophie_turner/ | APM Amber Heard, Kate Upton and Sophie Turner, which bombshell gets what? | NaN | r/CelebAssPussyMouth | -banned- | 2019-01-26 15:02:49 | Neutral | Neutral | 1.0 | NaN | submission | 12 | apm_amber_heard_kate_upton_and_sophie_turner | 8 | [] | 0 |
| 1491 | t3_am40fb | /r/sweepstakes/comments/am40fb/muvas_vday_giveaway_win_a_massive_personal_care/ | MUVA's Vday giveaway - win a massive personal care, beauty, and sex prize package from Amber Heard and Slut Box! {US} (02/06/19) | NaN | r/sweepstakes | -banned- | 2019-02-01 16:49:21 | Positive | Neutral | 2.0 | NaN | submission | 22 | muvas_vday_giveaway_win_a_massive_personal_care | 8 | [] | 0 |
| 1492 | t3_am40fp | /r/giveaways/comments/am40fp/muvas_vday_giveaway_win_a_massive_personal_care/ | MUVA's Vday giveaway - win a massive personal care, beauty, and sex prize package from Amber Heard and Slut Box! {US} (02/06/19) | NaN | r/giveaways | -banned- | 2019-02-01 16:49:23 | Positive | Neutral | 1.0 | NaN | submission | 22 | muvas_vday_giveaway_win_a_massive_personal_care | 8 | [] | 0 |
df_aqua.created_at.dt.date.value_counts().head(10)
2019-10-15 12 2019-10-19 11 2019-04-22 11 2019-03-15 8 2019-10-22 7 2019-10-24 6 2019-03-13 6 2019-03-14 5 2019-02-01 3 2019-05-21 2 Name: created_at, dtype: int64
df_aqua.subreddit.value_counts().head(10)
r/BitcoinWallpaper 44 r/EcuadorNoticias 11 r/movies 6 r/JerkOffToCelebs 6 r/AskReddit 5 r/DC_Cinematic 5 r/gentlemanboners 4 r/entertainment 4 r/television 3 r/MensRights 2 Name: subreddit, dtype: int64
df_aqua.author.value_counts().head(10)
bitcoinwallpaper2 26 -banned- 14 spastorm20 11 bitcoinwallpaper 10 bitcoinwallpaper3 7 i_am_leatherface 3 bufedad 3 Fgge 1 Waluigi2049 1 KrissyB93 1 Name: author, dtype: int64
r/BitcoinWallpaper top subreddit with 44 contributions form 115
bitcoinwallpaper2 this user made 26 contibutions with the same text [Aquaman] Amber Heard
df_users[df_users.user_name == 'bitcoinwallpaper2']
| user_name | has_verified_email | is_mod | is_gold | is_banned | comment_karma | link_karma | user_created_at | banned_unverified | creation_year | |
|---|---|---|---|---|---|---|---|---|---|---|
| 53034 | bitcoinwallpaper2 | True | True | False | False | 0.0 | 14.0 | 2019-10-11 19:30:50 | others | 2019 |
df_aqua[df_aqua.author == 'bitcoinwallpaper2'].created_at.dt.date.value_counts()
2019-10-22 6 2019-10-15 6 2019-10-19 6 2019-10-24 6 2019-10-12 1 2019-10-14 1 Name: created_at, dtype: int64
df_aqua[df_aqua.author == 'bitcoinwallpaper2'].subreddit.value_counts()
r/BitcoinWallpaper 26 Name: subreddit, dtype: int64
df_aqua[df_aqua.author == 'bitcoinwallpaper2'].submission_comment.value_counts()
submission 26 Name: submission_comment, dtype: int64
text = "ex-wife".lower()
df_her = df[df.text.str.contains(text)]
# df_her = df_her.sort_values('created_at')
print(df_her.shape)
df_her.head()
(154, 17)
| child_id | permalink | text | parent_id | subreddit | author | created_at | sentiment_blob | sentiment_nltk | score | top_level | submission_comment | text_words | submission_text | submission_words | urls | urls_count | |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 2620 | t1_ehkshd6 | /r/movies/comments/aw8x9o/johnny_depp_sues_amb... | For those who dont wanna click and are out of ... | t3_aw8x9o | r/movies | friedchickenpaws | 2019-03-01 19:59:53 | Positive | Negative | 32.0 | submission | comment | 46 | johnny_depp_sues_amber_heard_for_50_million | 8 | [] | 0 |
| 2632 | t3_aw9hyc | /r/newsfeedmedia/comments/aw9hyc/johnny_depp_s... | Johnny Depp sues ex-wife Amber Heard for $50mi... | NaN | r/newsfeedmedia | newsfeedmedia | 2019-03-01 20:44:43 | Neutral | Negative | 1.0 | NaN | submission | 11 | johnny_depp_sues_exwife_amber_heard_for_50million | 8 | [] | 0 |
| 2647 | t3_awaf1d | /r/MensRights/comments/awaf1d/johnny_depp_sues... | Johnny Depp sues ex-wife Amber Heard for $50mi... | NaN | r/MensRights | JohannReddit | 2019-03-01 22:11:40 | Neutral | Negative | 327.0 | NaN | submission | 11 | johnny_depp_sues_exwife_amber_heard_for_50million | 8 | [] | 0 |
| 2759 | t1_ehm5r6g | /r/entertainment/comments/awcjfw/johnny_depp_f... | Using finances to threaten, intimidate, or hur... | t3_awcjfw | r/entertainment | I_Heart_Squids | 2019-03-02 08:05:10 | Positive | Negative | -9.0 | submission | comment | 195 | johnny_depp_files_50_million_defamation_lawsuit | 7 | ['https://www.washingtonpost.com', 'https://pe... | 2 |
| 2792 | t3_awgee8 | /r/INDEPENDENTauto/comments/awgee8/arts_johnny... | [Arts] - Johnny Depp sues ex-wife Amber Heard ... | NaN | r/INDEPENDENTauto | AutoNewsAdmin | 2019-03-02 10:15:41 | Neutral | Negative | 1.0 | NaN | submission | 15 | arts_johnny_depp_sues_exwife_amber_heard_for_50m | 9 | [] | 0 |
df_her.text.values
array(['For those who dont wanna click and are out of the loop like myself. \n\nJohnny Depp\xa0has filed a defamation lawsuit against his ex-wife,\xa0Amber Heard, alleging\xa0her domestic abuse claims were “an elaborate hoax” and he is going after her for a whopping $50 million',
'Johnny Depp sues ex-wife Amber Heard for $50million over abuse claims',
'Johnny Depp sues ex-wife Amber Heard for $50million over abuse claims',
'Using finances to threaten, intimidate, or hurt someone is a classic tactic of abusers. Suing for defamation is one thing, but $50 million 3+ years after everything went down just reeks of vindictiveness. *At best* I could see a scenario where they were mutually abusive, but considering Depp’s obvious drug use and erratic behavior (and this latest bout of post-divorce pettiness) I lean more towards believing Heard’s account of things.\n\nEDIT: Take the time to look into why Depp is actually suing her. It’s over this op-ed: https://www.washingtonpost.com/opinions/ive-seen-how-institutions-protect-men-accused-of-abuse-heres-what-we-can-do/2018/12/18/71fd876a-02ed-11e9-b5df-5d3874f1ac36_story.html?utm_term=.6d2ded819b3b\n\nThat opinion piece on speaking out about sexual assault and violence is *literally* what Depp and his lawyer are listing as their reason for suing her:\n\n“Johnny Depp is demanding damages from ex-wife Amber Heard after she wrote an op-ed characterizing herself as a domestic abuse victim.”\n\nhttps://people.com/movies/johnny-depp-50-million-defamation-lawsuit-amber-heard/\n\nShe says she became a “public figure that represented domestic abuse”, which regardless of whether or not she was abused *is a true statement*. That statement is why she’s being sued *for $50 million*. This lawsuit is going to fail, because it is ludicrous. The more I read about it the more obviously vindictive, petty, and controlling it is.',
"[Arts] - Johnny Depp sues ex-wife Amber Heard for $50m over 'hoax' domestic abuse claims",
"[Arts] - Johnny Depp sues ex-wife Amber Heard for $50m over 'hoax' domestic abuse claims | The Independent",
'You mean this: https://www.washingtonpost.com/opinions/ive-seen-how-institutions-protect-men-accused-of-abuse-heres-what-we-can-do/2018/12/18/71fd876a-02ed-11e9-b5df-5d3874f1ac36_story.html?utm_term=.6d2ded819b3b\n\nBecause that opinion piece on speaking out about sexual assault and violence is *literally* what Depp and his lawyer are listing as their reason for suing her:\n\n“Johnny Depp is demanding damages from ex-wife Amber Heard after she wrote an op-ed characterizing herself as a domestic abuse victim.”\n\nhttps://people.com/movies/johnny-depp-50-million-defamation-lawsuit-amber-heard/\n\nThe thing is, the op-ed focuses more on sexual assault from her teens. It’s literally an article about how society at large treats you when you speak out, not an article focusing on Depp. The more I look into this lawsuit the more I feel like this is incredibly vindictive, petty, and controlling on Depp’s end.',
'Johnny Depp sues ex-wife Amber Heard over article',
'Johnny Depp sues ex-wife Amber Heard over article',
'[World] - Johnny Depp sues ex-wife Amber Heard over article',
'Johnny Depp sues ex-wife Amber Heard over article',
'@BBCWorld: Johnny Depp sues ex-wife Amber Heard over article https://t.co/goZQapC5Q8',
'[World] - Johnny Depp sues ex-wife Amber Heard over article | BBC',
'Johnny Depp sues ex-wife Amber Heard over article',
'‘An elaborate hoax’: Johnny Depp sues ex-wife Amber Heard for US$50 million in defamation suit over article on domestic abuse',
'[World] - ‘An elaborate hoax’: Johnny Depp sues ex-wife Amber Heard for US$50 million in defamation suit over article on domestic abuse',
'[World] - ‘An elaborate hoax’: Johnny Depp sues ex-wife Amber Heard for US$50 million in defamation suit over article on domestic abuse | South China Morning Post',
'Johnny Depp sues ex-wife Amber Heard and claims Elon Musk was sleeping with Amber while they were married in their own house.',
'Johnny Depp sues ex-wife Amber Heard for $50M, claiming defamation, affair with Elon Musk',
'Johnny Depp sues ex-wife Amber Heard for $50M, claiming defamation, affair with Elon Musk',
'Johnny Depp sues ex-wife Amber Heard for $50M, claiming defamation, affair with Elon Musk - Fox News',
'Johnny Depp claims ex-wife Amber Heard had an affair with Elon Musk',
"I found some links for you and one of them mentioned an affai with Ellon musk so I'm skeptical but there were a lot of articles about it when I only typed in Johnny Depp lawsuit Amer\nhttps://www.bbc.co.uk/news/amp/world-us-canada-47426674\n\nhttps://www.news.com.au/entertainment/celebrity-life/celebrities-gone-bad/johnny-depp-has-sued-former-wife-amber-heard-for-50m/news-story/f9255f471f41965a21bfe1cbe52675e2\n\nhttps://www.foxnews.com/entertainment/johnny-depp-sues-ex-wife-amber-heard-for-50m-claiming-defamation-affair-with-elon-musk\n\nAnd there's a single one that says 70M\n\nhttps://www.news.com.au/entertainment/celebrity-life/johnny-depp-files-70m-lawsuit-against-exwife-amber-heard/news-story/b5957e14b9b29388206deb94035663c4",
'Johnny Depp sues ex-wife Amber Heard, accuses her of cheating on him with Elon Musk',
'Johnny Depp sues ex-wife Amber Heard for $50M, claiming defamation, affair with Elon Musk - Fox News',
'[Entertainment] - Johnny Depp sues ex-wife Amber Heard for $50 million in defamation suit',
'Johnny Depp sues ex-wife Amber Heard, accuses her of cheating on him with Elon Musk - Channel NewsAsia',
"Johnny Depp claims ex-wife Amber Heard had an affair with Elon Musk and received 'late night' visits from the Tesla founder while the actor was away filming",
'@ABC: Johnny Depp sues ex-wife Amber Heard, claiming her allegations of abuse were false. https://t.co/RdRhG7lo0V https://t.co/ih4pUC2xjV',
'[Entertainment] - Johnny Depp sues ex-wife Amber Heard, claiming her allegations of abuse were false',
'[Entertainment] - Johnny Depp sues ex-wife Amber Heard, claiming her allegations of abuse were false | ABC',
'[Entertainment] - WATCH: Johnny Depp sues ex-wife Amber Heard, claiming her allegations of abuse were false',
'[Entertainment] - WATCH: Johnny Depp sues ex-wife Amber Heard, claiming her allegations of abuse were false | ABC',
'Johnny Depp sues ex-wife Amber Heard Over Me Too Article',
'Johnny Depp sues ex-wife Amber Heard for $50 million for allegedly defaming him',
'Johnny Depp sues ex-wife Amber Heard for $50 million for allegedly defaming him',
'[Entertainment] - Johnny Depp sues ex-wife Amber Heard for $50 million for allegedly defaming him',
'Johnny Depp sues ex-wife Amber Heard for $50 million for allegedly defaming him',
'@NBCNews: Johnny Depp sues ex-wife Amber Heard for $50 million for allegedly defaming him with false allegations of abuse. https://t.co/OYEwmxhPJu',
'Johnny Depp sues ex-wife Amber Heard for $50 million for allegedly defaming him',
'[Entertainment] - Johnny Depp sues ex-wife Amber Heard for $50 million for allegedly defaming him | NBC',
"03-04 22:12 - 'Johnny Depp sues ex-wife Amber Heard for $50 million for allegedly defaming him' (nbcnews.com) by /u/WriterDave removed from /r/news within 102-112min",
'[Top Stories] - Johnny Depp sues ex-wife Amber Heard for $50 million for allegedly defaming him',
'Johnny Depp sues ex-wife Amber Heard for $50 million for allegedly defaming him',
'@NBCNews: Johnny Depp sues ex-wife Amber Heard for $50 million for allegedly defaming him with false allegations of abuse. https://t.co/cOI6R2Kv2S',
'[Entertainment] - Johnny Depp sues ex-wife Amber Heard for $50 million for allegedly defaming him',
'[Entertainment] - Johnny Depp sues ex-wife Amber Heard for $50 million for allegedly defaming him | NBC',
'[Entertainment] - Johnny Depp sues ex-wife Amber Heard for $50 million for allegedly defaming him',
'[Entertainment] - Johnny Depp sues ex-wife Amber Heard for $50 million for allegedly defaming him | NBC',
"let's not get ahead of ourselves here. Johnny Depp has yet to prove anything just like his ex-wife had never proved anything. Why don't we let the courts go through the evidence and come to a conclusion before we start getting ahead of ourselves and breaking out the pitchforks.",
'He is suing HER for $50mil as part of a defamation lawsuit:\n\nhttps://www.nme.com/news/johnny-depp-reportedly-suing-ex-wife-amber-heard-50m-defamation-lawsuit-2456290\n\nShe wrote a WaPo article about the MeToo movement and what it\'s like for women who claim to have been domestically or sexually abused. He\'s suing her for a sentence stating she became "a public figure representing domestic abuse". It\'s been in the news, and the front page of Reddit, for weeks.\n\nHe is also suing The Sun.',
'Johnny Depp was abused by ex-wife Amber Heard, new evidence shows | Entertainment - Geo.tv',
'Johnny Depp was abused by ex-wife Amber Heard, new evidence shows',
'Johnny Depp was abused by ex-wife Amber Heard, new evidence shows',
'Johnny Depp was abused by ex-wife Amber Heard, new evidence shows',
'Johnny Depp was abused by ex-wife Amber Heard, new evidence shows',
'Johnny Depp was abused by ex-wife Amber Heard, new evidence shows',
'Johnny Depp was abused by ex-wife Amber Heard, new evidence shows',
'Shit. That literally helped me out an hour ago. Soon to be ex-wife with her untreated mental health issues wanted to amend the restraining order I have against her to see the dog, and I had her on video violating it back in January.\n\nJudge told her she was an idiot, in her own professional way. ',
'Johnny Depp was abused by ex-wife Amber Heard, new evidence shows',
'Johnny Depp was abused by ex-wife Amber Heard, new evidence shows',
"This story infuriates me. My ex-wife would pull the same things to try and trap me. It got to the point where I had to record phone calls and conversations and take pictures of the damage she had done because I was so afraid she would blame me. Luckily it's saved me when she filed a false police report eventually. \n\nReally bothers me our society's view on female to male domestic violence. She would brag to her coworkers about the thing she would do to me and they thought it was funny that I would complain about it. I'm glad Johnny was smart enough to cover his ass. I can only hope Amber ends up in jail. Most likely her spoiled white girl syndrome will save her oh, just like my ex. ",
"03-14 15:23 - 'Johnny Depp was abused by ex-wife Amber Heard, new evidence shows' (geo.tv) by /u/Soupjoe5 removed from /r/worldnews within 80-90min",
'[#23|+3390|554] Johnny Depp was abused by ex-wife Amber Heard, new evidence shows [/r/worldnews]',
'Johnny Depp was abused by ex-wife Amber Heard, new evidence shows',
'Johnny Depp was abused by ex-wife Amber Heard, new evidence shows',
'Ah, yes, a totally unbiased reading of the "evidence" from Pakistan\'s own GeoTV.\n\nRegardless of how this shakes out, it\'s pretty funny to watch commentators like the tweets in the article talking about how "the internet" and "the media" are so gullible and automatically take as gospel the testimony of any woman claiming to be a victim, citing... nothing but the testimony of a man saying otherwise as evidence that it\'s a lie. \n\nThe obviousness of your bias is just as clear as the obviousness of the bias you\'re calling out, that\'s why you have to go to Pakistani websites to find reporting like this since every reputable source will use cover it like [this](https://www.nbcnews.com/news/us-news/johnny-depp-sues-ex-wife-amber-heard-50-million-allegedly-n978976). Since it is, you know, unsubstantiated allegations backed up with evidence and testimony just as ambiguous as the evidence she entered. Unconfirmable photos of injuries, testimony from friends and staff, she had those things as evidence, too.',
"Because real news sources are reporting it [like this.](https://www.nbcnews.com/news/us-news/johnny-depp-sues-ex-wife-amber-heard-50-million-allegedly-n978976) Because the evidence is no more compelling than the evidence she entered in her suit and you'd have to have a vested interest in women claiming to be victims of domestic abuse being liars to report on it this way.",
'Johnny Depp was abused by ex-wife Amber Heard, new evidence shows',
'[Johnny Depp sues ex-wife Amber Heard in $50 million defamation suit](https://globalnews.ca/news/5016086/johnny-depp-amber-heard-defamation/) - Global News, March 2, 2019\n\n[Johnny Depp sues ex-wife for $50 million in defamation suit](https://www.ctvnews.ca/entertainment/johnny-depp-sues-ex-wife-for-50-million-in-defamation-suit-1.4319896) - CTV News, March 2, 2019\n\nIt has, just not American ones.',
'Johnny Depp was abused by ex-wife Amber Heard, new evidence shows',
'Johnny Depp was abused by ex-wife Amber Heard, new evidence shows',
'Johnny Depp was abused by ex-wife Amber Heard, new evidence shows',
'Johnny Depp accuses ex-wife Amber Heard of abuse, chopping his finger',
'> Hollywood actor Johnny Depp had been embroiled in a controversy after his ex-wife Amber Heard accused him of domestic abuse last year, in an op-ed penned in the Washington Post. Things seem to have turned around, however, with Depp suing Amber for $50 million for defamation.\n\n> Depp\'s lawsuit referred to Heard\'s allegations as a \'hoax\' and has presented new evidence that it was actually Depp who was physically abused in the marriage, and not the other way around. "Ms. Heard also knew that her elaborate hoax worked: As a result of her false allegations against Mr. Depp, Ms. Heard became a darling of the #MeToo movement, was the first actress named a Human Rights Champion of the United Nations Human Rights Office, was appointed ambassador on women\'s rights at the American Civil Liberties Union, and was hired by L\'Oreal Paris as its global spokesperson," the lawsuit stated.\n\n> Depp\'s legal team have provided fresh evidence alleging Heard punched Depp in the face and and chopped a part of his finger. The new video and photographic evidence submitted show Depp\'s face with a huge bruise, and one of his fingers severed. Depp also submitted 87 surveillance camera videos to the court and 17 depositions of witnesses, including police officers.\n\n> This new development has brought around a change in attitude towards Depp on social media. Fans have been apologising to the actor for accusing him of abuse. According to reports, Depp is \'overwhelmed\' with this outpouring of support.\n\n> This man has been attacked and hated for 3 years while he was the victim, but never stopped being the kind, gentle, sweet human being that he has always been. I\'m so happy to see him healing from all the abused he suffered #JohnnyDepp pic.twitter.com/7kSRm6xWUF\n\n> — Ang_Xim (@Lifeisabirdsong) March 13, 2019\nThe internet of idiots blindly supported Amber and trolled #JohnnyDepp without knowing the truth. https://t.co/GRAS1aGjt6\n\n> — Karthikiyen (@karthikiyen) March 13, 2019\nThis should get more retweets, this is why we\'re here, this is why he\'s suing!!#JohnnyDepp #johnnydeppisinnocent https://t.co/F8wvrobc6m\n\n> — Maya #IBelieveHim (@mayak215) March 13, 2019',
"> The actor sued his ex-wife for defamation earlier this month\n\n> Details of Johnny Depp‘s defamation lawsuit against Amber Heard have come to light, with the actor accusing his ex-wife of numerous incidents of domestic abuse.\n\n> Depp filed a $50 million lawsuit against Heard on March 1, with the Pirates of the Caribbean star taking action in response to an op-ed Heard penned in 2018 for The Washington Post. Although she didn’t specifically mention Depp by name, the piece refers to the allegations of domestic abuse that Heard first made against the actor in 2016.\n\n> The couple divorced in 2017 after settling both their divorce and Heard’s domestic abuse case against Depp the previous year.\nDepp’s lawsuit has now been made available to view online, with the papers claiming that Heard’s allegations of domestic abuse are nothing more than an “elaborate hoax”.\n\n> “The op-ed depended on the central premise that Ms. Heard was a domestic abuse victim and that Mr. Depp perpetrated domestic violence against her,” the complaint reads, adding that the piece’s implication that Depp was a domestic abuser are “categorically and demonstrably false.”\n\n> “Ms. Heard’s false allegations against Mr. Depp have been conclusively refuted by two separate responding police officers, a litany of neutral third-party witnesses, and 87 newly obtained surveillance camera videos.”\n\n> The suit, which accuses Heard of being a “perpetrator” of domestic abuse, also alleges that Heard attacked Depp numerous times, including an incident where Heard “violently” threw a bottle of vodka at Depp which “severed [his] middle finger on his right hand and shattered the bones,” causing him to require surgery. Heard is also accused of punching Depp while he was in bed, kicking him on numerous occasions and staging attacks.\n\n>“Unaware that members of Mr. Depp’s security team were mere feet away, Ms. Heard falsely began yelling, ‘Stop hitting me, Johnny,'” the documents describe one alleged incident in May 2016. “The interaction culminated with Ms. Heard making false allegations that \nMr. Depp struck her with a cell phone, hit her and destroyed the penthouse. There were multiple eyewitnesses to this hoax.”\n\n> In response to the lawsuit earlier this month, Heard’s attorney Eric M. George told Deadline: “This frivolous action is just the latest of Johnny Depp’s repeated efforts to silence Amber Heard. She will not be silenced.\n\n> “Mr. Depp’s actions prove he is unable to accept the truth of his ongoing abusive behaviour. But while he appears hell-bent on achieving self destruction, we will prevail in defeating this groundless lawsuit and ending the continued vile harassment of my client by Mr. Depp and his legal team.”\n",
'Johnny Depp files defamation suit against ex-wife Amber Heard',
'Pakistan is a country with honor killings and incredibly regressive views on women\'s rights, and its news organizations reflect that, as well as the lower standard of journalistic ethics held by many of its publications. \n\nIt\'s relevant because looking at the [top news stories on google for Johnny Depp](https://imgur.com/O6HKFzY) right now **all** of the stories reporting this story in that way are either Pakistani, Nigerian, or American far right propaganda sites. Like, for instance, The Daily Wire that you have cited there, which is owned by Ben Shapiro. \n\nAlmost as if the people that want to present this story in this particular way have a clear agenda. And at least one of the "top stories" (5why.com.au) comes from a website with no google results other than this story and a non-working website. Which looks a lot like a PR campaign using fake news sites and media outlets that actively push an anti-feminist agenda to influence public opinion on this court case and Depp himself.\n\n----------------\n\nThe other two sources you have there simply explain the allegations of the suit, list its supposed evidence, and detail public reaction to it. Which is not the same as saying the very explicit and declarative "Johnny Depp was abused by ex-wife Amber Heard, new evidence shows." Proper journalism would be "Johnny Depp *claims to have been* abused by ex-wife Amber Heard, *according to allegations in new defamation suit*" \n\nThis matter hasn\'t been adjudicated yet, his claims and evidence have been presented to the court but that doesn\'t make it automatically true any more than her claims in court were. It\'s not the role of a journalist to present someone\'s unverified claims as true and if you think this article(or the Daily Caller) is what actual journalism looks like I invite you to consider that maybe you want it to be true.',
'But Johnny Depp has no history of being accused of domestic violence.Even after being initially accused by her,his exes,including his ex-wife and mother of his children and his daughter supported him and said he would never do that.His close friends too.Not to mention that Amber Heard does have a history of being accused of domestic violence.She was once almost arrested for abusing her girlfriend at the time but her girlfriend denied it or something when questioned by the police and they both accused the policeman of being homophobic and that being the reason why he accused her of such a thing.But the policeman turned out to be gay himself,so...',
'Johnny Depp was abused by ex-wife Amber Heard, new evidence shows',
'Johnny Depp was abused by ex-wife Amber Heard, new evidence shows',
'Johnny Depp was abused by ex-wife Amber Heard, new evidence shows',
'Johnny Depp was abused by ex-wife Amber Heard, new evidence shows',
"Amber Heard does not have a history of accusing people of domestic violence and her ex-wife has never accused her of anything either. \n\nBut for what it's worth, some relationships can bring out a dark side in you. Not having a pattern of physical violence isn't necessarily an indication that someone doesn't have the capacity to be violent, given the right triggers. Also, people like to romanticise Johnny Depp because when most of us were kids and adolescents, he was fun and cheeky Jack Sparrow and a devoted family man. But in his 20s he was a bit of a hellraiser, a heavy drinker with a temper and a destructive streak. \n\nPersonally I think it was a toxic relationship that became violent due to heavy alcohol and perhaps drug abuse, and that it could have gone both ways. ",
'NEWS:Johnny Depp was abused by ex-wife Amber Heard, new evidence shows',
'Johnny Depp was abused by ex-wife Amber Heard, new evidence shows [r/movies by u/JediBurrell]',
'Original post: [Johnny Depp was abused by ex-wife Amber Heard, new evidence shows](/r/movies/comments/b1bdis/johnny_depp_was_abused_by_exwife_amber_heard_new/)',
"If only not [one](https://www.tmz.com/2016/05/29/johnny-depp-ex-partner-wife-amber-heard-vanessa/) but [two](https://www.tmz.com/2016/05/28/johnny-depp-ex-wife-denies-abuse/) of his exes, or even [one](https://www.thewrap.com/johnny-depp-is-being-blackmailed-by-amber-heard-heres-how-i-know-guest-column/) of his friends, had defended him two years ago or let people know that he was the one being abused, maybe he wouldn't have been torn apart by the media and general public.",
'[#1|+8294|1192] Johnny Depp was abused by ex-wife Amber Heard, new evidence shows [/r/movies]',
'This is being censored by the default subs - Johnny Depp was abused by ex-wife Amber Heard, new evidence shows',
'Johnny Depp was abused by ex-wife Amber Heard, new evidence shows',
'I’ve been saying this all along, I had a female abuser and that video Heard posted is exaclty the kind of fake displays my ex would use to deflect. Heard’s behavior during and after their divorce never made sense. Also she has a record of domestic abuse toward her ex-wife. Depp’s ex’s all came forward and said it was incredibly out of character. \n\nEdit: Thank you so much for the gold generous fellow Redditor! I hope the truth is finally revealed in this case. \nSolidarity to all domestic abuse survivors whether male or female. \n\n2nd Edit: Thank you generous fellow redditor for the Silver! Some of us have female abusers, good to acknowledge each other even if anonymously. ',
"I remember his ex wife came out to defend him when it was announced. \n\n> Lori - who spoke to the actor last week following the death of his mother - has told friends Johnny never got physical with her during their relationship and did not even scream at her in anger.\n\n>Lori - who remains friends with Johnny - dubbed the Pirates Of The Caribbean star a 'soft person'.\n\nEdit: I found the article\n\nhttps://www.dailymail.co.uk/tvshowbiz/article-3614450/Johnny-Depp-s-ex-wife-Lori-Anne-Allison-claims-never-lay-hand-woman-actor-accused-abusing-Amber-Heard.html",
'Johnny Depp was abused by ex-wife Amber Heard, new evidence shows [Relevancy in Comments]',
'"abused ex wife" - according to said ex wife. You post that drivel in here - in this thread - where the problem is a one-sided accusation from an ex-wife that turned out to be blatantly false? And people upvote you? They never learn.',
"'New photos and evidence were released to the public on Tuesday revealing actor Johnny Depp was abused by his ex-wife Amber Heard.'\n\nSo where are the pictures for F's sake? If they were released to the public, why didn't they at least link them?",
'She had an ex-wife who confirmed she is manipulative and abusive, while every single character witness for Depp says he’s never abused anyone in any way in his entire life.\n\nShe’s a fraud, and she’s manipulating you too based on your solidarity urge to relate to other women. ',
'[Mods deleted the previous one] Johnny Depp was abused by ex-wife Amber Heard, new evidence shows',
'Johnny Depp was abused by ex-wife Amber Heard new evidence shows.',
'> She admitted to the abuse. The article state that. It\'s validated by the court report. \n\nI honestly cannot find that in the article. Can you please quote it?\n\nEdit 2: i couldn’t find it, because it wasn’t in the article or was “mysteriously edited out” to prevent plagiarism or whatever bullshit thats being claimed\n\nEdit:\n\nThe entire article:\n\n> New photos and evidence were released to the public on Tuesday revealing actor Johnny Depp was abused by his ex-wife Amber Heard.\nThe latest evidence came to light as Depp sued Heard for $50 million for defamation. The case has shown that Heard has in fact admitted to the abuse while being under oath.\nHeard had alleged that the Pirates of the Caribbean actor had physically abused her during their marriage. The couple separated in 2016, when she filed for divorce and accused him of physically abusing her, but now he has filed a lawsuit against her, in which he alleges she punched him in the face and chopped off his finger.\nThe new pictures released show Depp’s face with a huge black bruise, and a haunting photo of his finger, half chopped off.\nDepp also submitted 87 surveillance camera videos to the court, 17 depositions of witnesses (which includes police officers), and the images.\n“Ms. Heard is not a victim of domestic abuse, she is a perpetrator,” the lawsuit says in reaction to Amber Heard penning an op-ed in The Washington Post back in 2018, which the lawsuit further says is nothing more than an "elaborate hoax," and that she also used those claims to further her career in the wake of the #MeToo movement.\n“They were part of an elaborate hoax to generate positive publicity for Ms Heard and advance her career,” the lawsuit says of the allegations against Depp’s violent behaviour, which his lawyers claim is the reason he is no longer a part of Disney\'s Pirates of The Caribbean franchise and reboot.\nThe lawsuit alleges incidents where Heard thew a bottle of vodka at Depp, which resulted in an injury to his hand requiring surgery, punching Depp as he was in bed, kicking him on numerous occasions, and even staging her own attacks.\n"Unaware that members of Mr Depp\'s security team (including an 18-year veteran of the Los Angeles County Sheriff’s Department) were mere feet away, Ms Heard falsely began yelling, \'Stop hitting me, Johnny,\'" the lawsuit states. "The interaction culminated with Ms Heard making false allegations that Mr Depp struck her with a cell phone, hit her and destroyed the penthouse. There were multiple eyewitnesses to this hoax."\nThere has been an outpouring of support for the actor with many apologising over social media for accusing him of abuse.',
'Johnny Depp was abused by ex-wife Amber Heard, new evidence shows',
'Johnny Depp was abused by ex-wife Amber Heard, new evidence shows',
'Johnny Depp was abused by ex-wife Amber Heard, new evidence shows',
'Johnny Depp was abused by ex-wife Amber Heard, new evidence shows',
'Johnny Depp was abused by ex-wife Amber Heard, new evidence shows',
'My ex-husband with BPD punched himself in the eye and told everyone I did it. He stabbed himself in the hand with a fork when he attempted to stab the flip phone he was holding, and told everyone that his mom who was on the other end of the call did it.\n\nThankfully everyone he told had already been a victim of him claiming to be their victim. (His mom tried to kill him by leaving him in a hot car when he was 10, his sister sexually abused him, he was harassed by his ex-wife, his dad sexually assaulted him, his best friend cursed him with a magic hex...)',
'Johnny Depp was abused by ex-wife Amber Heard, new evidence shows',
'Johnny Depp, accused of spousal abuse, was abused by ex-wife Amber Heard',
'Johnny Depp was abused by ex-wife Amber Heard, new evidence shows • r/MGTOW',
'> "Amber Heard definitely lied about everything in that relationship. Dude bent over backward for her, including doing some dumb shit, trying to get her dogs into Australia without following immigration procedures. That bitch is a sociopath - **for years [she was a lesbian](http://archive.fo/n2L3z#selection-2467.0-2479.30), then suddenly she is marrying a dude, and she has no real body of work. This was a career maneuver for her, pure and simple.**" —[ForensicatingEdibles](https://www.reddit.com/r/pussypassdenied/comments/awvaeh/johnny_depp_files_50_million_defamation_lawsuit/ehpjilt/)\n\nNumerous articles have come out on this one on Reddit ([1](https://www.reddit.com/r/MGTOW/comments/b10u79/just_more_truths_for_my_fellow_mgtows/), [2](https://www.reddit.com/r/MGTOW/comments/b1k7oz/johnny_depp_was_abused_by_exwife_amber_heard_new/), [3](https://www.reddit.com/r/pussypassdenied/comments/awvaeh/johnny_depp_files_50_million_defamation_lawsuit/), [4](https://www.reddit.com/r/MGTOW/comments/b1f1uf/wow/)) and elsewhere.\n\n1. [**Globalnews.ca**: Johnny Depp claims Amber Heard punched him ‘twice in the face’](https://globalnews.ca/news/4367197/johnny-depp-amber-heard-punched-him/)\n2. [**Geo.tv**: Johnny Depp was abused by ex-wife Amber Heard, new evidence shows](https://www.geo.tv/latest/230905)\n3. [**DailyWire**: People Believed Johnny Depp Was A Domestic Abuser. It Turns Out He May Have Been The Victim.](https://www.dailywire.com/news/44616/people-believed-johnny-depp-was-domestic-abuser-it-ashe-schow)\n4. [**Twitter**: Fake bruise on Amber Heard](https://twitter.com/Zoe_Heriot_/status/1104363876576047105)\n5. [**Jakarta Post**: The Amber Heard-Johnny Depp domestic abuse case just got even messier](https://www.thejakartapost.com/life/2019/03/14/the-amber-heard-johnny-depp-domestic-abuse-case-just-got-even-messier-.html)',
'Johnny Depp was abused by ex-wife Amber Heard, new evidence shows',
'Johnny Depp was abused by ex-wife Amber Heard, new evidence shows',
'Johnny Depp was abused by ex-wife Amber Heard, who accused him of sexual assault to further her career',
'Johnny Depp sues ex-wife Amber Heard for $50million over abuse claims',
'>Johnny Depp has claimed that he has submitted 87 surveillance videos to support his defamation case against his ex-wife Amber Heard.\n\nWhy now? Why did he not release this sooner? ',
'Johnny Depp files counter-lawsuit against Amber Heard, accuses ex-wife of domestic abuse. ~ Based on this news, I think it sheds light on the contentious relationship Elon had with Heard.',
'Johnny Depp was abused by ex-wife Amber Heard, new evidence shows',
'Johnny Depp was abused by ex-wife Amber Heard, new evidence shows | Entertainment - Geo.tv (/r/WeinsteinEffect)',
'Johnny Depp accuses ex-wife Amber Heard of abuse, chopping his finger',
'Johnny Depp was abused by ex-wife Amber Heard, new evidence shows',
'> New photos and evidence were released to the public on Tuesday revealing actor Johnny Depp was abused by his ex-wife Amber Heard.\n\nOk, where are they?',
"Johnny Depp's ex-wife, Amber Heard, asks judge to dismiss $50M defamation lawsuit",
"[Entertainment] - Johnny Depp's ex-wife, Amber Heard, asks judge to dismiss $50M defamation lawsuit",
"[Entertainment] - Johnny Depp's ex-wife, Amber Heard, asks judge to dismiss $50M defamation lawsuit | USA Today",
'Johnny Depp is reportedly dragging Elon Musk into the bitter legal fight with his ex-wife Amber Heard - INSIDER',
"Johnny Depp accuses ex-wife Amber Heard of 'painting-on' bruises",
"[World] - Johnny Depp accuses ex-wife Amber Heard of 'painting-on' bruises",
"Johnny Depp accuses ex-wife Amber Heard of 'painting-on' bruises",
"Johnny Depp accuses ex-wife Amber Heard of 'painting-on' bruises",
"[World] - Johnny Depp accuses ex-wife Amber Heard of 'painting-on' bruises | Guardian",
'Johnny Depp claims ex-wife Amber Heard defecated on his bed, says that’s when he resolved to divorce her',
"Johnny Depp accuses ex-wife Amber Heard of 'painting-on' bruises",
"He's already suing. That is why there are loads of articles. The first paragraph of the article we are discussion literally says this.\n\n>Johnny Depp is accusing his ex-wife Amber Heard of abusing him in his first declaration as part of his $50 million defamation lawsuit against her.\n\nSeriously?",
"'I was the victim': Johnny Depp says ex-wife Amber Heard 'painted on' bruises, report claims",
"'I was the victim': Johnny Depp says ex-wife Amber Heard 'painted on' bruises, report claims",
'‘I was the victim’: Johnny Depp says ex-wife Amber Heard ‘painted on’ bruises, report claims',
'‘I was the victim’: Johnny Depp says ex-wife Amber Heard ‘painted on’ bruises, report claims',
'Johnny Depp claims ex-wife Amber Heard defecated on his bed, says that’s when he resolved to divorce her',
'Johnny Depp claims ex-wife Amber Heard defecated on his bed, says that’s when he resolved to divorce her',
'Johnny Depp blames ex-wife Amber Heard for a cut off finger, in “his career struggle”: “Her bruises were make-up”',
'Well she claimed that he would have beaten her. She even went to court. Interesting case since the police came and did not see anything on her. His ex-wife vanessa paradis and their daughter jumped to his side, telling the press that he never got violent against them and they couldn‘t imagine he‘d ever will attack woman. She won at court anyway, but during this time she tried to look good by declaring that she would give all the money to charity. \nI don‘t know Johny in person, but i know drunks, some attack people, some can and will direct their anger NOT on people. I think, he is one of them. No proof, just gut feeling and the vows of exwife and daughter. \n \nAfter that see was seen with Elon Musk for a short time, but that guy seems smart. And i forgot: SHE has a history of violence. so...',
"[Arts] - James Franco subpoenaed in Johnny Depp's $50 million lawsuit against ex-wife Amber Heard",
"[Arts] - James Franco subpoenaed in Johnny Depp's $50 million lawsuit against ex-wife Amber Heard | The Independent",
"Johnny Depp's ex-wife. She accused him of being abusive, but evidence eventually came to light suggesting that she was the more abusive one in the relationship.",
'I don\'t know what this subject is doing in this sub. It\'s to suggest that "women as chaos"? Because if in case it is the intention of the thread, I would like to remember that such abusive attitude is not exclusive to women. It\'s just an other case of a human being trying to take money from an other human being without have to look for a job. Remember that it was his ex-wife who defended JD in court and online.',
'His ex-wife has only ever said good things about him as far as I know, so I am definitely skeptical.',
'"Johnny Depp has claimed that he has submitted 87 surveillance videos to support his defamation case against his ex-wife Amber Heard". \n\nhttp://www.ladbible.com/entertainment/news-johnny-depp-submits-87-videos-of-amber-heard-attacking-him-to-court-20190316',
'Also saw that Depp’s other ex-wife (who I didn’t even know existed) also supports Depp',
'New accusations of Johnny Depp to his ex-wife Amber Heard: “She put out my cigarette on my cheek”',
'yeah his ex-wife and daughter said they never experienced Depp the way Heard claimed. Personally I think Heard was looking for some press to get her name out there, she definitely seems the type of person who would do that.',
'https://mobile.twitter.com/cinemapatti/status/1105438073423159296?ref_url=https%3a%2f%2fwww.5why.com.au%2fchilling-new-evidence-shows-johnny-depp-was-violently-abused-by-amber-heard%2f\n\nThe photo of the finger is NSFW, maybe NSFL. \n\nI don’t know if I have to flag that somehow, but it had to be mentioned.\n\nAdditional article: https://www.geo.tv/latest/230905-johnny-depp-was-abused-by-ex-wife-amber-heard-new-evidence-shows\n\n“The case has shown that Heard has in fact admitted to the abuse while being under oath.”',
'It’s still ongoing. Here’s a timeline:\n\nhttps://www.eonline.com/news/1054235/a-complete-timeline-of-johnny-depp-and-amber-heard-s-ongoing-legal-battle\n\nAs far as I’m aware, it’s still ongoing and will be for a while. \n\nBut all the evidence I’ve seen points toward Heard lying. These things don’t just happen - they’re a pattern. They escalate. This marriage was two years long and [heard has a history of abuse.](https://www.latimes.com/entertainment/gossip/la-et-mg-amber-heard-girlfriend-domestic-violence-20160607-snap-story.html) it’s pretty open-and-shut IMO.\n\n[Even his first ex-wife says as much, and she was married to him longer. ](https://www.tmz.com/2016/05/28/johnny-depp-ex-wife-denies-abuse/) \n\nAll of that plus the witness testimony and the photo of the finger (initially released when he was In the hospital - happened while he and heard were married) add up to heard lying.',
'Heard was *arrested for misdemeanor assault* and then the charges were dropped.\n\nhttps://www.usatoday.com/story/life/movies/2016/06/07/amber-heard-arrested-2009-charge-hitting-girlfriend/85563338/\n\nJust because you decide not to press charges and decide to have the arrest wiped from records and then decide to defend someone arrested for misdemeanor assault doesn’t mean they didn’t commit misdemeanor assault. Hell, the current president’s ex-wife testified under oath that he raped her, then turned around and claimed that was a lie - I’m not saying that’s what happened, but that it happens all the time, and ignoring a literal arrest for assault is a little unfair. If Depp had a similar arrest I’d be saying the same thing. \n\nThis article says that he hurt himself while fighting on the phone with heard:\n\nhttps://www.dailymail.co.uk/news/article-3741910/Photo-Johnny-Depp-s-ghastly-finger-cut-tip-fit-rage-wrote-blood-wall-Amber-Heard-affair-Billy-Bob-Thornton.html\n\nSo I’m beginning to wonder if the whole finger issue is irrelevant (unless there was verbal abuse over the phone, which I’m not seeing there being any claims of). He clearly hurt himself and blamed his reaction on her. Even if he’s innocent, he’s an idiot on this one. \n\nI understand that a lawsuit isn’t a ruling, but that doesn’t mean that multiple eyewitnesses should be discounted, either. \n\nIt’s certainly true that you can abuse nobody your entire life and then abuse someone else terribly. I’m not saying otherwise - all I’m saying is that a character witness such as an ex-wife should certainly have weight to it when compared to someone with a history of assault. \n\nBrock turner is a piece of shit - but the testimony (‘written letter’ - not even testimony) of a girlfriend at 17-18 in high school is different from an ex-wife of three years in many different ways. While I agree with your point, I think this specific comparison is a little unfair as there weren’t any sexual assault claims that I know of. \n\nWe’re all entitled to our opinions, and obviously neither of us are going to change ours with the information that’s been released to the public. Clearly they’re both trying to control the narrative, and it goes without saying that neither of their lawyers’ other clients inspire confidence. I, too, will wait for a final verdict in all of this. (I’m friends with some people in depp’s professional circle and it’s made me a little partial for obvious reasons)',
'I don’t think this particular reply was necessary, my friend. I tried to come to a reasonable middle ground here, but you seem to be pretty adamant about dismissing relevant information. An arrest for assault is an arrest for assault. Yeah, cops don’t determine guilt. Yeah, you can dispute those things and be correct. But you seem to think that a victim (particularly one less famous and rich than the alleged abuser) couldn’t be coerced into saying something didn’t happen after an arrest was made? That’s why I made the trump comparison (and immediately afterwards said that I wasn’t saying that was what happened in this situation, but rather used it as an example that people can be assaulted and coerced into saying it wasn’t true).\n\nWould you find yourself in a situation that looks to a police officer like you assaulted someone? I mean, I’m pretty damned sure that nothing I’ve ever done would look like assault to an officer, and can’t think of anything someone would do that would look like assault to a cop but wasn’t. Again, I could very well be wrong about it. But the arrest for assault... is relevant information in a case about assault, man, despite you wanting it not to be. If Depp were in the same boat, I’d say the same about him. \n\nLol... Brock turner clearly raping several teens (edit: convicted of 3 assault charges, not against different people. I got that wrong.) and Depp saying he was the subject of abuse rather than an abuser while providing evidence of such is **vastly different**. Kind of horrible of you to continue pushing this narrative. Anyone can be a physical abuser, anyone can be a rapist - but multiple accusations of rape against one person point to a pattern while one incident that appears (like it or not) to be either mutual abuse or fabricated abuse on one side is NOT the same. Period. \n\nI, twice, agreed that no past abuse does not imply a lack of present abuse. Here I am doing it a third time. Weird how you chose to pretend I didn’t. \n\nAnd lastly, this affects my professional circle, so yeah I will naturally look for innocence in the people I’m more familiar with - and me acknowledging as much and learning along the way is all I can do in response. It must be nice to not care about this - my career path might just completely change because of this. \n\nYou can claim my arguments are poorly sourced, but I clearly know what I’m talking about (I looked for and provided you court filings, while you sent me daily mail links. C’mon.) and very obviously conceded where I learned my research was lacking. You’re the only one here digging in your heels. \nDon’t be a dick about it.\n\nEdit: Brock Turner was convicted on three felony counts of assault. I, for whatever reason, assumed that meant three victims, and assumed they were 18 or 19 instead of being one 22 year old. That certainly doesn’t make me a liar, and certainly doesn’t disprove my point that ONE person imprisoned on THREE COUNTS OF ASSAULT (rape) is VASTLY different from TWO PEOPLE each claiming the other person abused them and each providing evidence against the other. Nobody accused anybody of rape, they were married and Turner wasn’t (a vastly different relationship), and an ex-wife of three years defending her ex-husband has a shitton more bearing (in my mind) than a 17 year old girl who said that a then-18-year-old-boy was nice to her in high school.'],
dtype=object)
with pd.option_context('display.max_colwidth', None):
display(df_her.head())
| child_id | permalink | text | parent_id | subreddit | author | created_at | sentiment_blob | sentiment_nltk | score | top_level | submission_comment | text_words | submission_text | submission_words | urls | urls_count | |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 2620 | t1_ehkshd6 | /r/movies/comments/aw8x9o/johnny_depp_sues_amber_heard_for_50_million/ehkshd6/ | For those who dont wanna click and are out of the loop like myself. \n\nJohnny Depp has filed a defamation lawsuit against his ex-wife, Amber Heard, alleging her domestic abuse claims were “an elaborate hoax” and he is going after her for a whopping $50 million | t3_aw8x9o | r/movies | friedchickenpaws | 2019-03-01 19:59:53 | Positive | Negative | 32.0 | submission | comment | 46 | johnny_depp_sues_amber_heard_for_50_million | 8 | [] | 0 |
| 2632 | t3_aw9hyc | /r/newsfeedmedia/comments/aw9hyc/johnny_depp_sues_exwife_amber_heard_for_50million/ | Johnny Depp sues ex-wife Amber Heard for $50million over abuse claims | NaN | r/newsfeedmedia | newsfeedmedia | 2019-03-01 20:44:43 | Neutral | Negative | 1.0 | NaN | submission | 11 | johnny_depp_sues_exwife_amber_heard_for_50million | 8 | [] | 0 |
| 2647 | t3_awaf1d | /r/MensRights/comments/awaf1d/johnny_depp_sues_exwife_amber_heard_for_50million/ | Johnny Depp sues ex-wife Amber Heard for $50million over abuse claims | NaN | r/MensRights | JohannReddit | 2019-03-01 22:11:40 | Neutral | Negative | 327.0 | NaN | submission | 11 | johnny_depp_sues_exwife_amber_heard_for_50million | 8 | [] | 0 |
| 2759 | t1_ehm5r6g | /r/entertainment/comments/awcjfw/johnny_depp_files_50_million_defamation_lawsuit/ehm5r6g/ | Using finances to threaten, intimidate, or hurt someone is a classic tactic of abusers. Suing for defamation is one thing, but $50 million 3+ years after everything went down just reeks of vindictiveness. *At best* I could see a scenario where they were mutually abusive, but considering Depp’s obvious drug use and erratic behavior (and this latest bout of post-divorce pettiness) I lean more towards believing Heard’s account of things.\n\nEDIT: Take the time to look into why Depp is actually suing her. It’s over this op-ed: https://www.washingtonpost.com/opinions/ive-seen-how-institutions-protect-men-accused-of-abuse-heres-what-we-can-do/2018/12/18/71fd876a-02ed-11e9-b5df-5d3874f1ac36_story.html?utm_term=.6d2ded819b3b\n\nThat opinion piece on speaking out about sexual assault and violence is *literally* what Depp and his lawyer are listing as their reason for suing her:\n\n“Johnny Depp is demanding damages from ex-wife Amber Heard after she wrote an op-ed characterizing herself as a domestic abuse victim.”\n\nhttps://people.com/movies/johnny-depp-50-million-defamation-lawsuit-amber-heard/\n\nShe says she became a “public figure that represented domestic abuse”, which regardless of whether or not she was abused *is a true statement*. That statement is why she’s being sued *for $50 million*. This lawsuit is going to fail, because it is ludicrous. The more I read about it the more obviously vindictive, petty, and controlling it is. | t3_awcjfw | r/entertainment | I_Heart_Squids | 2019-03-02 08:05:10 | Positive | Negative | -9.0 | submission | comment | 195 | johnny_depp_files_50_million_defamation_lawsuit | 7 | ['https://www.washingtonpost.com', 'https://people.com'] | 2 |
| 2792 | t3_awgee8 | /r/INDEPENDENTauto/comments/awgee8/arts_johnny_depp_sues_exwife_amber_heard_for_50m/ | [Arts] - Johnny Depp sues ex-wife Amber Heard for $50m over 'hoax' domestic abuse claims | NaN | r/INDEPENDENTauto | AutoNewsAdmin | 2019-03-02 10:15:41 | Neutral | Negative | 1.0 | NaN | submission | 15 | arts_johnny_depp_sues_exwife_amber_heard_for_50m | 9 | [] | 0 |
text = "Amber Heard in Aquaman 2, why?"
df_aqua = df[df.text.str.contains(text)]
df_aqua = df_aqua.sort_values('created_at')
print(df_aqua.shape)
df_aqua.head()
# .style.applymap(lambda x: helpers.coloring(x, {'Positive': '#deebce', 'Negative': '#edbcbb'}),
# subset=['sentiment_blob', 'sentiment_nltk'])
(0, 17)
| child_id | permalink | text | parent_id | subreddit | author | created_at | sentiment_blob | sentiment_nltk | score | top_level | submission_comment | text_words | submission_text | submission_words | urls | urls_count |
|---|
text = "What did she hear?".lower()
df_hear = df[df.text.str.contains(text)]
# df_her = df_her.sort_values('created_at')
print(df_hear.shape)
df_hear.head()
(3, 17)
| child_id | permalink | text | parent_id | subreddit | author | created_at | sentiment_blob | sentiment_nltk | score | top_level | submission_comment | text_words | submission_text | submission_words | urls | urls_count | |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 357 | t1_edh8kss | /r/celebnsfw/comments/adhbsj/amber_heard/edh8kss/ | what did she hear? | t3_adhbsj | r/celebnsfw | cuacuacuac | 2019-01-07 15:39:49 | Neutral | Neutral | 3.0 | submission | comment | 4 | amber_heard | 2 | [] | 0 |
| 534 | t1_edl7vr6 | /r/goddesses/comments/adxeru/amber_heard/edl7vr6/ | But what did she hear? | t3_adxeru | r/goddesses | -TheExtraMile- | 2019-01-08 21:44:48 | Neutral | Neutral | 3.0 | submission | comment | 5 | amber_heard | 2 | [] | 0 |
| 12685 | t1_ejvogca | /r/geekboners/comments/b83lax/aquaman_amber_he... | what did she hear? | t3_b83lax | r/geekboners | mattreyu | 2019-04-01 15:39:54 | Neutral | Neutral | 0.0 | submission | comment | 4 | aquaman_amber_heard | 3 | [] | 0 |
df_hear.author.value_counts()
mattreyu 1 -TheExtraMile- 1 cuacuacuac 1 Name: author, dtype: int64
df_hear.subreddit.value_counts()
r/celebnsfw 1 r/geekboners 1 r/goddesses 1 Name: subreddit, dtype: int64
df_hear.top_level.value_counts()
submission 3 Name: top_level, dtype: int64
This means they are all first comments on submissions!!
df_hear.submission_comment.value_counts()
comment 3 Name: submission_comment, dtype: int64
Check the number of text words
Of course few words are easier for bots to create
df['text_words'].value_counts().head(10);
px.histogram(df['text_words'].to_frame(), x="text_words",title='number of words in each contribution',
nbins=200).update_traces(marker_color='#5296dd')
The number of parent comments on submissions¶
px.bar(data_frame=df['top_level'].value_counts().to_frame().reset_index(),
x="index", y="top_level", text="top_level").update_layout(title='Comment or Submission (Top Level of Contrbution "Parent")',
xaxis_title='contribution top level (parent) category',
yaxis_title='number of contributions').update_traces(marker_color='#5296dd')
Investigating the Submission Text
(Submissions with the most comments and replies)
We can get the number of different submissions by looking only at the submissions dataframe
Also we can look at submission_text with the most interactions (repeated submission_text)
df['submission_text'].value_counts().head(10)
johnny_depp_was_abused_by_exwife_amber_heard_new 4958 amber_heard 4308 DC_Cinematic 784 johnny_depp_files_50_million_defamation_lawsuit 652 report_james_marsden_amber_heard_in_negotiations 469 the_naked_truth_about_johnny_depp_case_and_what 417 johnny_depps_50m_defamation_suit_against_amber 401 johnny_depp_fans_are_pushing_hard_to_get_amber 319 johnny_depp_files_new_legal_docs_claiming_proof 293 petition_to_remove_accused_dv_perpetrator_amber 282 Name: submission_text, dtype: int64
This could be either submissions with more comments and replies, or different submissions with the same text, we cannot know for sure.
df_mera = df.query(" submission_text == 'johnny_depp_was_abused_by_exwife_amber_heard_new' & \
submission_comment == 'submission' ")
print(df_mera.shape)
with pd.option_context('display.max_colwidth', None):
display(df_mera.head())
(34, 17)
| child_id | permalink | text | parent_id | subreddit | author | created_at | sentiment_blob | sentiment_nltk | score | top_level | submission_comment | text_words | submission_text | submission_words | urls | urls_count | |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 5479 | t3_b0x9co | /r/WeinsteinEffect/comments/b0x9co/johnny_depp_was_abused_by_exwife_amber_heard_new/ | Johnny Depp was abused by ex-wife Amber Heard, new evidence shows | Entertainment - Geo.tv | NaN | r/WeinsteinEffect | Lingenfelter | 2019-03-14 07:09:49 | Positive | Neutral | 411.0 | NaN | submission | 15 | johnny_depp_was_abused_by_exwife_amber_heard_new | 9 | [] | 0 |
| 5539 | t3_b10l31 | /r/news/comments/b10l31/johnny_depp_was_abused_by_exwife_amber_heard_new/ | Johnny Depp was abused by ex-wife Amber Heard, new evidence shows | NaN | r/news | -banned- | 2019-03-14 13:51:49 | Positive | Negative | 1.0 | NaN | submission | 11 | johnny_depp_was_abused_by_exwife_amber_heard_new | 9 | [] | 0 |
| 5540 | t3_b10ld3 | /r/worldnews/comments/b10ld3/johnny_depp_was_abused_by_exwife_amber_heard_new/ | Johnny Depp was abused by ex-wife Amber Heard, new evidence shows | NaN | r/worldnews | Soupjoe5 | 2019-03-14 13:52:36 | Positive | Negative | 4552.0 | NaN | submission | 11 | johnny_depp_was_abused_by_exwife_amber_heard_new | 9 | [] | 0 |
| 5542 | t3_b10p3q | /r/news/comments/b10p3q/johnny_depp_was_abused_by_exwife_amber_heard_new/ | Johnny Depp was abused by ex-wife Amber Heard, new evidence shows | NaN | r/news | -banned- | 2019-03-14 14:02:20 | Positive | Negative | 1.0 | NaN | submission | 11 | johnny_depp_was_abused_by_exwife_amber_heard_new | 9 | [] | 0 |
| 5547 | t3_b10qx2 | /r/news/comments/b10qx2/johnny_depp_was_abused_by_exwife_amber_heard_new/ | Johnny Depp was abused by ex-wife Amber Heard, new evidence shows | NaN | r/news | -banned- | 2019-03-14 14:06:58 | Positive | Negative | 1.0 | NaN | submission | 11 | johnny_depp_was_abused_by_exwife_amber_heard_new | 9 | [] | 0 |
34 Different Submissions
li = list(df_mera.author.unique())
li.remove('-banned-')
df_users[df_users.user_name.isin(li)]
| user_name | has_verified_email | is_mod | is_gold | is_banned | comment_karma | link_karma | user_created_at | banned_unverified | creation_year | |
|---|---|---|---|---|---|---|---|---|---|---|
| 195 | Lingenfelter | True | True | False | False | 2647.0 | 144041.0 | 2007-11-12 22:24:47 | others | others |
| 4269 | radbrad7 | True | True | False | False | 373986.0 | 899438.0 | 2011-12-20 05:25:44 | others | others |
| 11579 | JediBurrell | True | True | False | False | 101682.0 | 94461.0 | 2013-10-21 12:08:02 | others | others |
| 12178 | starkiller10123 | True | True | False | False | 35943.0 | 8781.0 | 2013-12-13 03:36:16 | others | others |
| 12552 | topredditbot | False | True | False | False | 65972.0 | 549296.0 | 2014-01-12 23:39:45 | unverified | others |
| 13579 | PeterWrightMGTOW | True | True | False | False | 311.0 | 22982.0 | 2014-04-15 11:55:34 | others | others |
| 13588 | bitcoin-optimist | True | True | False | False | 2420.0 | 5565.0 | 2014-04-16 13:02:09 | others | others |
| 14365 | unremovable | True | True | False | False | 29.0 | 61796.0 | 2014-06-29 18:44:04 | others | others |
| 14820 | soalone34 | True | False | False | False | 147964.0 | 145144.0 | 2014-08-07 02:10:41 | others | others |
| 16913 | ContentForager | False | True | False | False | 8076.0 | 912032.0 | 2015-01-22 03:49:50 | unverified | others |
| 17838 | dronningmargrethe | True | True | False | False | 40357.0 | 14484.0 | 2015-04-08 21:23:47 | others | others |
| 19114 | zeropoundpom | False | False | False | False | 1652.0 | 29132.0 | 2015-07-26 11:28:01 | unverified | others |
| 19512 | roguesimian | True | False | False | False | 47733.0 | 39624.0 | 2015-08-26 21:16:10 | others | others |
| 25642 | Ahmad1214 | True | False | False | False | 7631.0 | 10172.0 | 2016-10-24 17:26:24 | others | others |
| 25863 | MononMysticBuddha | True | False | False | False | 14934.0 | 12528.0 | 2016-11-07 19:22:35 | others | others |
| 28095 | Oblique9043 | True | True | False | False | 25642.0 | 3337.0 | 2017-02-28 19:32:42 | others | others |
| 31424 | TheSuperSagor | True | True | False | False | 44.0 | 210.0 | 2017-08-24 19:56:33 | others | others |
| 35507 | Soupjoe5 | True | False | False | False | 4954.0 | 36131.0 | 2018-03-14 20:29:49 | others | 2018 |
| 41406 | Tall_Escape | True | True | False | False | 20472.0 | 30976.0 | 2018-10-31 03:05:06 | others | 2018 |
| 42619 | chilliflake44 | False | False | False | False | 3905.0 | 6243.0 | 2018-12-08 21:15:40 | unverified | 2018 |
df_mera_comments = df.query(" submission_text == 'johnny_depp_was_abused_by_exwife_amber_heard_new' ")
print(df_mera_comments.shape)
df_mera_comments.head(1)
(4958, 17)
| child_id | permalink | text | parent_id | subreddit | author | created_at | sentiment_blob | sentiment_nltk | score | top_level | submission_comment | text_words | submission_text | submission_words | urls | urls_count | |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 5479 | t3_b0x9co | /r/WeinsteinEffect/comments/b0x9co/johnny_depp... | Johnny Depp was abused by ex-wife Amber Heard,... | NaN | r/WeinsteinEffect | Lingenfelter | 2019-03-14 07:09:49 | Positive | Neutral | 411.0 | NaN | submission | 15 | johnny_depp_was_abused_by_exwife_amber_heard_new | 9 | [] | 0 |
df_mera_contributions = df_mera_comments.groupby(df_mera_comments.created_at.dt.date).size().reset_index(name='n_contributions')
fig = px.bar(df_mera_contributions.head(7),
x='created_at',
y='n_contributions', title='The number of contributions/date on these submissions')
fig.update_layout(
xaxis = dict(
title='Contribution Date',
tickmode = 'array',
tickvals = df_mera_contributions.head(7).created_at,
)
)
clrs = ['red' if (y > 200) else '#5296dd' for y in df_mera_contributions.n_contributions]
fig.update_traces(marker_color=clrs, marker_line_width=1.5, opacity=1, textposition='auto')
fig.show()
df_mera_authors = df_mera_comments.groupby(df_mera_comments.author).size().reset_index(name='n_contributions')
fig = px.bar(df_mera_authors,
x='author',
y='n_contributions', title='The number of contributions per author on these submissions')
fig.update_traces(opacity=1, textposition='auto')
# , marker_line_color='#5296dd', marker_line_width=2
fig.update_yaxes(range = [0,25])
fig.show()
df_mera_authors.sort_values('n_contributions', ascending=False).head(10)
| author | n_contributions | |
|---|---|---|
| 3 | -banned- | 778 |
| 1674 | guac_boi1 | 36 |
| 893 | Pixelated_Piracy | 34 |
| 1877 | majortom106 | 29 |
| 514 | HawkofDarkness | 25 |
| 1061 | Slyndrr | 21 |
| 561 | Ignorant_Slut | 19 |
| 176 | BrobaFett115 | 19 |
| 378 | EarlyEndTimes | 16 |
| 2092 | sajeebooty | 16 |
df_users.query(" user_name in ['guac_boi1', 'Pixelated_Piracy', 'majortom106']")
| user_name | has_verified_email | is_mod | is_gold | is_banned | comment_karma | link_karma | user_created_at | banned_unverified | creation_year | |
|---|---|---|---|---|---|---|---|---|---|---|
| 13687 | Pixelated_Piracy | True | False | False | False | 25092.0 | 257.0 | 2014-04-25 07:16:31 | others | others |
| 27101 | guac_boi1 | True | False | False | False | 56749.0 | 6786.0 | 2017-01-09 23:31:59 | others | others |
| 27341 | majortom106 | True | False | False | False | 26689.0 | 8313.0 | 2017-01-22 22:02:53 | others | others |
df_mera = df.query(" submission_text == 'amber_heard' & \
submission_comment == 'submission' ")
print(df_mera.shape)
with pd.option_context('display.max_colwidth', None):
display(df_mera.head())
(1717, 17)
| child_id | permalink | text | parent_id | subreddit | author | created_at | sentiment_blob | sentiment_nltk | score | top_level | submission_comment | text_words | submission_text | submission_words | urls | urls_count | |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 38 | t3_abfc1j | /r/goddesses/comments/abfc1j/amber_heard/ | Amber Heard | NaN | r/goddesses | latimeriachalumnae | 2019-01-01 05:20:39 | Neutral | Neutral | 222.0 | NaN | submission | 2 | amber_heard | 2 | [] | 0 |
| 39 | t3_abfcjd | /r/Celebs/comments/abfcjd/amber_heard/ | Amber Heard | NaN | r/Celebs | latimeriachalumnae | 2019-01-01 05:22:16 | Neutral | Neutral | 268.0 | NaN | submission | 2 | amber_heard | 2 | [] | 0 |
| 62 | t3_abgu6t | /r/Celebsnudess/comments/abgu6t/amber_heard/ | Amber Heard | NaN | r/Celebsnudess | TallTax | 2019-01-01 09:15:07 | Neutral | Neutral | 273.0 | NaN | submission | 2 | amber_heard | 2 | [] | 0 |
| 63 | t3_abgwve | /r/Celebs/comments/abgwve/amber_heard/ | Amber Heard | NaN | r/Celebs | corporate_monster777 | 2019-01-01 09:30:06 | Neutral | Neutral | 242.0 | NaN | submission | 2 | amber_heard | 2 | [] | 0 |
| 75 | t3_abi5fq | /r/Celebs/comments/abi5fq/amber_heard/ | Amber Heard | NaN | r/Celebs | emilyguy | 2019-01-01 13:21:56 | Neutral | Neutral | 699.0 | NaN | submission | 2 | amber_heard | 2 | [] | 0 |
1717 Different Submissions
li = list(df_mera.author.unique())
li.remove('-banned-')
df_users[df_users.user_name.isin(li)]
| user_name | has_verified_email | is_mod | is_gold | is_banned | comment_karma | link_karma | user_created_at | banned_unverified | creation_year | |
|---|---|---|---|---|---|---|---|---|---|---|
| 29 | RyanSmith | True | True | False | False | 263666.0 | 5989322.0 | 2006-08-07 14:18:44 | others | others |
| 38 | ukexpat | True | False | False | False | 116030.0 | 37812.0 | 2006-09-26 14:31:15 | others | others |
| 52 | davidreiss666 | True | True | False | False | 255369.0 | 2666725.0 | 2006-11-04 19:51:54 | others | others |
| 230 | soundsoul | True | True | False | False | 4156.0 | 238286.0 | 2008-01-04 02:52:49 | others | others |
| 237 | MrGravityPants | True | False | False | False | 21589.0 | 24628.0 | 2008-01-10 18:08:45 | others | others |
| ... | ... | ... | ... | ... | ... | ... | ... | ... | ... | ... |
| 68709 | GregDahl | True | True | True | True | NaN | NaN | NaT | banned | banned |
| 68889 | funlover24 | True | True | True | True | NaN | NaN | NaT | banned | banned |
| 68977 | jarek212 | True | True | True | True | NaN | NaN | NaT | banned | banned |
| 70057 | dhruvangrup | True | True | True | True | NaN | NaN | NaT | banned | banned |
| 70281 | HellsJuggernaut | True | True | True | True | NaN | NaN | NaT | banned | banned |
349 rows × 10 columns
df_mera_comments = df.query(" submission_text == 'amber_heard' ")
print(df_mera_comments.shape)
df_mera_comments.head(1)
(4308, 17)
| child_id | permalink | text | parent_id | subreddit | author | created_at | sentiment_blob | sentiment_nltk | score | top_level | submission_comment | text_words | submission_text | submission_words | urls | urls_count | |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 10 | t1_eczluk0 | /r/celebnsfw/comments/abakip/amber_heard/eczluk0/ | Been there, have the scars to prove it.\n\nBut... | t1_ecz86xu | r/celebnsfw | clonedspork | 2019-01-01 02:47:28 | Positive | Negative | 4.0 | comment | comment | 23 | amber_heard | 2 | [] | 0 |
df_mera_contributions = df_mera_comments.groupby(df_mera_comments.created_at.dt.date).size().reset_index(name='n_contributions')
fig = px.bar(df_mera_contributions.head(7),
x='created_at',
y='n_contributions', title='The number of contributions/date on these submissions')
fig.update_layout(
xaxis = dict(
title='Contribution Date',
tickmode = 'array',
tickvals = df_mera_contributions.head(7).created_at,
)
)
clrs = ['red' if (y > 200) else '#5296dd' for y in df_mera_contributions.n_contributions]
fig.update_traces(marker_color=clrs, marker_line_width=1.5, opacity=1, textposition='auto')
fig.show()
df_mera_authors = df_mera_comments.groupby(df_mera_comments.author).size().reset_index(name='n_contributions')
fig = px.bar(df_mera_authors,
x='author',
y='n_contributions', title='The number of contributions per author on these submissions')
fig.update_traces( opacity=1, textposition='auto')
# , marker_line_color='#5296dd', marker_line_width=2
fig.update_yaxes(range = [0,25])
fig.show()
df_mera_authors.sort_values('n_contributions', ascending=False).head(10)
| author | n_contributions | |
|---|---|---|
| 4 | -banned- | 1066 |
| 84 | AutoModerator | 116 |
| 202 | Dannig178 | 47 |
| 705 | RuleIV | 39 |
| 218 | DerHander | 30 |
| 683 | Rednaxela117 | 28 |
| 394 | InfiniTitans | 26 |
| 1263 | imsrikant | 20 |
| 1159 | emilyguy | 20 |
| 661 | Queen1110 | 19 |
df_users.query(" user_name in ['AutoModerator', 'Dannig178', 'RuleIV']")
| user_name | has_verified_email | is_mod | is_gold | is_banned | comment_karma | link_karma | user_created_at | banned_unverified | creation_year | |
|---|---|---|---|---|---|---|---|---|---|---|
| 4432 | AutoModerator | True | True | True | False | 1000.0 | 1000.0 | 2012-01-05 05:24:28 | others | others |
| 13888 | Dannig178 | True | True | True | False | 2765.0 | 982410.0 | 2014-05-14 14:35:40 | others | others |
| 16497 | RuleIV | True | True | False | False | 12457.0 | 860.0 | 2014-12-21 09:43:04 | others | others |
df_mera = df.query(" submission_text == 'johnny_depp_files_50_million_defamation_lawsuit' & \
submission_comment == 'submission' ")
print(df_mera.shape)
with pd.option_context('display.max_colwidth', None):
display(df_mera.head())
(10, 17)
| child_id | permalink | text | parent_id | subreddit | author | created_at | sentiment_blob | sentiment_nltk | score | top_level | submission_comment | text_words | submission_text | submission_words | urls | urls_count | |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 2664 | t3_awcjfw | /r/entertainment/comments/awcjfw/johnny_depp_files_50_million_defamation_lawsuit/ | Johnny Depp Files $50 Million Defamation Lawsuit Against Amber Heard | NaN | r/entertainment | RoyisOurBoy | 2019-03-02 01:57:17 | Neutral | Negative | 2621.0 | NaN | submission | 10 | johnny_depp_files_50_million_defamation_lawsuit | 7 | [] | 0 |
| 2666 | t3_awcm08 | /r/movies/comments/awcm08/johnny_depp_files_50_million_defamation_lawsuit/ | Johnny Depp files $50 million defamation lawsuit against Amber Heard | NaN | r/movies | -banned- | 2019-03-02 02:05:26 | Neutral | Negative | 1.0 | NaN | submission | 10 | johnny_depp_files_50_million_defamation_lawsuit | 7 | [] | 0 |
| 2720 | t3_aweu9e | /r/MensRights/comments/aweu9e/johnny_depp_files_50_million_defamation_lawsuit/ | Johnny Depp Files $50 Million Defamation Lawsuit Against Ex-Wife Amber Heard After Her Op-Ed As A Purported Domestic Violence Victim. | NaN | r/MensRights | -banned- | 2019-03-02 06:29:38 | Negative | Negative | 31.0 | NaN | submission | 20 | johnny_depp_files_50_million_defamation_lawsuit | 7 | [] | 0 |
| 2842 | t3_awhqws | /r/worldnews/comments/awhqws/johnny_depp_files_50_million_defamation_lawsuit/ | Johnny Depp files $50 million defamation lawsuit against Amber Heard | NaN | r/worldnews | aviralupdate | 2019-03-02 13:26:22 | Neutral | Negative | 1.0 | NaN | submission | 10 | johnny_depp_files_50_million_defamation_lawsuit | 7 | [] | 0 |
| 2921 | t3_awifxl | /r/news/comments/awifxl/johnny_depp_files_50_million_defamation_lawsuit/ | Johnny Depp Files $50 Million Defamation Lawsuit Against Amber Heard, Calls Her Abuse Claims an ‘Elaborate Hoax’ | NaN | r/news | rlw0312 | 2019-03-02 14:49:13 | Positive | Negative | 1.0 | NaN | submission | 17 | johnny_depp_files_50_million_defamation_lawsuit | 7 | [] | 0 |
10 Different Submissions
li = list(df_mera.author.unique())
li.remove('-banned-')
df_users[df_users.user_name.isin(li)]
| user_name | has_verified_email | is_mod | is_gold | is_banned | comment_karma | link_karma | user_created_at | banned_unverified | creation_year | |
|---|---|---|---|---|---|---|---|---|---|---|
| 12193 | rlw0312 | True | False | False | False | 88393.0 | 15171.0 | 2013-12-14 04:32:50 | others | others |
| 17521 | amigokomashiangeljr | True | True | False | False | 9401.0 | 13615.0 | 2015-03-14 13:09:57 | others | others |
| 18709 | RoyisOurBoy | False | False | False | False | 26958.0 | 214143.0 | 2015-06-26 12:29:15 | unverified | others |
| 35070 | hleb13 | True | False | False | False | 10267.0 | 20464.0 | 2018-02-23 21:38:07 | others | 2018 |
| 66028 | aviralupdate | True | True | True | True | NaN | NaN | NaT | banned | banned |
| 68681 | przemkas | True | True | True | True | NaN | NaN | NaT | banned | banned |
df_mera_comments = df.query(" submission_text == 'johnny_depp_files_50_million_defamation_lawsuit' ")
print(df_mera_comments.shape)
df_mera_comments.head(1)
(652, 17)
| child_id | permalink | text | parent_id | subreddit | author | created_at | sentiment_blob | sentiment_nltk | score | top_level | submission_comment | text_words | submission_text | submission_words | urls | urls_count | |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 2664 | t3_awcjfw | /r/entertainment/comments/awcjfw/johnny_depp_f... | Johnny Depp Files $50 Million Defamation Lawsu... | NaN | r/entertainment | RoyisOurBoy | 2019-03-02 01:57:17 | Neutral | Negative | 2621.0 | NaN | submission | 10 | johnny_depp_files_50_million_defamation_lawsuit | 7 | [] | 0 |
df_mera_contributions = df_mera_comments.groupby(df_mera_comments.created_at.dt.date).size().reset_index(name='n_contributions')
fig = px.bar(df_mera_contributions.head(7),
x='created_at',
y='n_contributions', title='The number of contributions/date on these submissions')
fig.update_layout(
xaxis = dict(
title='Contribution Date',
tickmode = 'array',
tickvals = df_mera_contributions.head(7).created_at,
)
)
clrs = ['red' if (y > 200) else '#5296dd' for y in df_mera_contributions.n_contributions]
fig.update_traces(marker_color=clrs, marker_line_width=1.5, opacity=1, textposition='auto')
fig.show()
df_mera_authors = df_mera_comments.groupby(df_mera_comments.author).size().reset_index(name='n_contributions')
fig = px.bar(df_mera_authors,
x='author',
y='n_contributions', title='The number of contributions per author on these submissions')
fig.update_traces(marker_color='#5296dd', opacity=1, textposition='auto')
# , marker_line_color='#5296dd', marker_line_width=2
fig.update_yaxes(range = [0,25])
fig.show()
df_mera_authors.sort_values('n_contributions', ascending=False).head(10)
| author | n_contributions | |
|---|---|---|
| 2 | -banned- | 83 |
| 176 | armoured_bobandi | 21 |
| 251 | masksnjunk | 19 |
| 35 | Doctah__Wahwee | 12 |
| 116 | PromiscuousMNcpl | 9 |
| 245 | littleliongirless | 9 |
| 156 | VanvanZandt | 7 |
| 54 | ForensicatingEdibles | 7 |
| 185 | bitter_truth_ | 7 |
| 291 | sammythemc | 7 |
df_users.query(" user_name in ['armoured_bobandi', 'masksnjunk', 'Doctah__Wahwee']")
| user_name | has_verified_email | is_mod | is_gold | is_banned | comment_karma | link_karma | user_created_at | banned_unverified | creation_year | |
|---|---|---|---|---|---|---|---|---|---|---|
| 11644 | masksnjunk | True | False | False | False | 21553.0 | 12571.0 | 2013-10-27 17:21:08 | others | others |
| 21402 | Doctah__Wahwee | True | False | False | False | 88115.0 | 663.0 | 2016-01-31 19:20:36 | others | others |
| 23142 | armoured_bobandi | True | False | False | False | 74298.0 | 844.0 | 2016-06-01 23:45:20 | others | others |
df_mera = df.query(" submission_text == 'report_james_marsden_amber_heard_in_negotiations' & \
submission_comment == 'submission' ")
print(df_mera.shape)
with pd.option_context('display.max_colwidth', None):
display(df_mera.head())
(2, 17)
| child_id | permalink | text | parent_id | subreddit | author | created_at | sentiment_blob | sentiment_nltk | score | top_level | submission_comment | text_words | submission_text | submission_words | urls | urls_count | |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 16235 | t3_c4pw5a | /r/television/comments/c4pw5a/report_james_marsden_amber_heard_in_negotiations/ | Report: James Marsden, Amber Heard in Negotiations to Star in The Stand Miniseries | NaN | r/television | sweetestdeth | 2019-06-24 15:32:15 | Neutral | Neutral | 1674.0 | NaN | submission | 13 | report_james_marsden_amber_heard_in_negotiations | 7 | [] | 0 |
| 16370 | t3_c4u6dy | /r/stephenking/comments/c4u6dy/report_james_marsden_amber_heard_in_negotiations/ | Report: James Marsden, Amber Heard in Negotiations to Star in The Stand Miniseries | NaN | r/stephenking | tacocat-_-tacocat | 2019-06-24 19:36:29 | Neutral | Neutral | 53.0 | NaN | submission | 13 | report_james_marsden_amber_heard_in_negotiations | 7 | [] | 0 |
2 Different Submissions
li = list(df_mera.author.unique())
df_users[df_users.user_name.isin(li)]
| user_name | has_verified_email | is_mod | is_gold | is_banned | comment_karma | link_karma | user_created_at | banned_unverified | creation_year | |
|---|---|---|---|---|---|---|---|---|---|---|
| 24581 | sweetestdeth | True | False | False | False | 33784.0 | 39792.0 | 2016-08-21 19:54:58 | others | others |
| 26048 | tacocat-_-tacocat | True | False | False | False | 990.0 | 1770.0 | 2016-11-18 16:28:40 | others | others |
df_mera_comments = df.query(" submission_text == 'report_james_marsden_amber_heard_in_negotiations' ")
print(df_mera_comments.shape)
df_mera_comments.head(1)
(469, 17)
| child_id | permalink | text | parent_id | subreddit | author | created_at | sentiment_blob | sentiment_nltk | score | top_level | submission_comment | text_words | submission_text | submission_words | urls | urls_count | |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 16235 | t3_c4pw5a | /r/television/comments/c4pw5a/report_james_mar... | Report: James Marsden, Amber Heard in Negotiat... | NaN | r/television | sweetestdeth | 2019-06-24 15:32:15 | Neutral | Neutral | 1674.0 | NaN | submission | 13 | report_james_marsden_amber_heard_in_negotiations | 7 | [] | 0 |
df_mera_contributions = df_mera_comments.groupby(df_mera_comments.created_at.dt.date).size().reset_index(name='n_contributions')
fig = px.bar(df_mera_contributions.head(7),
x='created_at',
y='n_contributions', title='The number of contributions/date on these submissions')
fig.update_layout(
xaxis = dict(
title='Contribution Date',
tickmode = 'array',
tickvals = df_mera_contributions.head(7).created_at,
)
)
clrs = ['red' if (y > 200) else '#5296dd' for y in df_mera_contributions.n_contributions]
fig.update_traces(marker_color=clrs, marker_line_width=1.5, opacity=1, textposition='auto')
fig.show()
df_mera_authors = df_mera_comments.groupby(df_mera_comments.author).size().reset_index(name='n_contributions')
fig = px.bar(df_mera_authors,
x='author',
y='n_contributions', title='The number of contributions per author on these submissions')
fig.update_traces(marker_color='#5296dd', opacity=1, textposition='auto')
# , marker_line_color='#5296dd', marker_line_width=2
fig.update_yaxes(range = [0,25])
fig.show()
df_mera_authors.sort_values('n_contributions', ascending=False).head(10)
| author | n_contributions | |
|---|---|---|
| 2 | -banned- | 39 |
| 210 | sweetestdeth | 30 |
| 186 | paperbackgarbage | 17 |
| 137 | col-fancypants | 13 |
| 120 | a_satanic_mechanic | 10 |
| 154 | foul_dwimmerlaik | 10 |
| 179 | mentor13 | 10 |
| 133 | cchrist4545 | 9 |
| 26 | ClementineCarson | 9 |
| 124 | barlow_straker | 8 |
df_users.query(" user_name in ['sweetestdeth', 'paperbackgarbage', 'col-fancypants']")
| user_name | has_verified_email | is_mod | is_gold | is_banned | comment_karma | link_karma | user_created_at | banned_unverified | creation_year | |
|---|---|---|---|---|---|---|---|---|---|---|
| 16046 | paperbackgarbage | True | False | False | False | 199220.0 | 3282.0 | 2014-11-12 23:37:57 | others | others |
| 16442 | col-fancypants | True | True | False | False | 290619.0 | 16547.0 | 2014-12-16 21:35:57 | others | others |
| 24581 | sweetestdeth | True | False | False | False | 33784.0 | 39792.0 | 2016-08-21 19:54:58 | others | others |
df_mera = df.query(" submission_text == 'the_naked_truth_about_johnny_depp_case_and_what' & \
submission_comment == 'submission' ")
print(df_mera.shape)
with pd.option_context('display.max_colwidth', None):
display(df_mera.head())
(2, 17)
| child_id | permalink | text | parent_id | subreddit | author | created_at | sentiment_blob | sentiment_nltk | score | top_level | submission_comment | text_words | submission_text | submission_words | urls | urls_count | |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 17130 | t3_cbu25y | /r/JordanPeterson/comments/cbu25y/the_naked_truth_about_johnny_depp_case_and_what/ | The Naked truth about Johnny Depp case and what the greedy abuser Amber Heard has put him through | NaN | r/JordanPeterson | swiet | 2019-07-11 10:20:54 | Neutral | Neutral | 4347.0 | NaN | submission | 18 | the_naked_truth_about_johnny_depp_case_and_what | 9 | [] | 0 |
| 17282 | t3_cbx9hl | /r/SupportForTheAccused/comments/cbx9hl/the_naked_truth_about_johnny_depp_case_and_what/ | The Naked truth about Johnny Depp case and what the greedy abuser Amber Heard has put him through | NaN | r/SupportForTheAccused | reeeren | 2019-07-11 15:54:44 | Neutral | Neutral | 174.0 | NaN | submission | 18 | the_naked_truth_about_johnny_depp_case_and_what | 9 | [] | 0 |
2 Different Submissions
li = list(df_mera.author.unique())
df_users[df_users.user_name.isin(li)]
| user_name | has_verified_email | is_mod | is_gold | is_banned | comment_karma | link_karma | user_created_at | banned_unverified | creation_year | |
|---|---|---|---|---|---|---|---|---|---|---|
| 23694 | swiet | True | False | False | False | 8739.0 | 1208944.0 | 2016-07-03 11:18:49 | others | others |
| 41341 | reeeren | False | False | False | False | 933.0 | 34090.0 | 2018-10-29 08:29:00 | unverified | 2018 |
df_mera_comments = df.query(" submission_text == 'the_naked_truth_about_johnny_depp_case_and_what' ")
print(df_mera_comments.shape)
df_mera_comments.head(1)
(417, 17)
| child_id | permalink | text | parent_id | subreddit | author | created_at | sentiment_blob | sentiment_nltk | score | top_level | submission_comment | text_words | submission_text | submission_words | urls | urls_count | |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 17130 | t3_cbu25y | /r/JordanPeterson/comments/cbu25y/the_naked_tr... | The Naked truth about Johnny Depp case and wha... | NaN | r/JordanPeterson | swiet | 2019-07-11 10:20:54 | Neutral | Neutral | 4347.0 | NaN | submission | 18 | the_naked_truth_about_johnny_depp_case_and_what | 9 | [] | 0 |
df_mera_contributions = df_mera_comments.groupby(df_mera_comments.created_at.dt.date).size().reset_index(name='n_contributions')
fig = px.bar(df_mera_contributions.head(7),
x='created_at',
y='n_contributions', title='The number of contributions/date on these submissions')
fig.update_layout(
xaxis = dict(
title='Contribution Date',
tickmode = 'array',
tickvals = df_mera_contributions.head(7).created_at,
)
)
clrs = ['red' if (y > 200) else '#5296dd' for y in df_mera_contributions.n_contributions]
fig.update_traces(marker_color=clrs, marker_line_width=1.5, opacity=1, textposition='auto')
fig.show()
df_mera_authors = df_mera_comments.groupby(df_mera_comments.author).size().reset_index(name='n_contributions')
fig = px.bar(df_mera_authors,
x='author',
y='n_contributions', title='The number of contributions per author on these submissions')
fig.update_traces(marker_color='#5296dd', opacity=1, textposition='auto')
# , marker_line_color='#5296dd', marker_line_width=2
fig.update_yaxes(range = [0,25])
fig.show()
df_mera_authors.sort_values('n_contributions', ascending=False).head(10)
| author | n_contributions | |
|---|---|---|
| 0 | -banned- | 74 |
| 49 | Lily_Roza | 20 |
| 189 | the8track | 9 |
| 3 | Actuallyconsistent | 9 |
| 129 | dj1041 | 9 |
| 100 | Teacupfullofcherries | 7 |
| 18 | CypherZ3R0 | 6 |
| 142 | grumpieroldman | 6 |
| 192 | tklite | 6 |
| 186 | sterob | 6 |
df_users.query(" user_name in ['Lily_Roza']")
| user_name | has_verified_email | is_mod | is_gold | is_banned | comment_karma | link_karma | user_created_at | banned_unverified | creation_year | |
|---|---|---|---|---|---|---|---|---|---|---|
| 21870 | Lily_Roza | True | False | False | False | 47951.0 | 202.0 | 2016-03-08 16:25:41 | others | others |
df_mera = df.query(" submission_text == 'petition_to_remove_accused_dv_perpetrator_amber' & \
submission_comment == 'submission' ")
print(df_mera.shape)
with pd.option_context('display.max_colwidth', None):
display(df_mera.head())
(4, 17)
| child_id | permalink | text | parent_id | subreddit | author | created_at | sentiment_blob | sentiment_nltk | score | top_level | submission_comment | text_words | submission_text | submission_words | urls | urls_count | |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 11943 | t3_b4ck1x | /r/MensRights/comments/b4ck1x/petition_to_remove_accused_dv_perpetrator_amber/ | Petition To Remove 'Accused DV Perpetrator' Amber Heard from Aquaman 2 | NaN | r/MensRights | PeterWrightMGTOW | 2019-03-23 00:14:25 | Neutral | Negative | 2745.0 | NaN | submission | 11 | petition_to_remove_accused_dv_perpetrator_amber | 7 | [] | 0 |
| 12005 | t3_b4ghw0 | /r/Feminism/comments/b4ghw0/petition_to_remove_accused_dv_perpetrator_amber/ | Petition To Remove 'Accused DV Perpetrator' Amber Heard from Aquaman 2 | NaN | r/Feminism | -banned- | 2019-03-23 07:41:10 | Neutral | Negative | 1.0 | NaN | submission | 11 | petition_to_remove_accused_dv_perpetrator_amber | 7 | [] | 0 |
| 12106 | t3_b4iwmg | /r/WeinsteinEffect/comments/b4iwmg/petition_to_remove_accused_dv_perpetrator_amber/ | Petition To Remove 'Accused DV Perpetrator' Amber Heard from Aquaman 2 | NaN | r/WeinsteinEffect | 5th_Law_of_Robotics | 2019-03-23 13:00:22 | Neutral | Negative | 162.0 | NaN | submission | 11 | petition_to_remove_accused_dv_perpetrator_amber | 7 | [] | 0 |
| 12237 | t3_b4rb3z | /r/Egalitarianism/comments/b4rb3z/petition_to_remove_accused_dv_perpetrator_amber/ | Petition To Remove 'Accused DV Perpetrator' Amber Heard from Aquaman 2 | NaN | r/Egalitarianism | 5th_Law_of_Robotics | 2019-03-24 02:20:36 | Neutral | Negative | 20.0 | NaN | submission | 11 | petition_to_remove_accused_dv_perpetrator_amber | 7 | [] | 0 |
4 Different Submissions
li = list(df_mera.author.unique())
li.remove('-banned-')
df_users[df_users.user_name.isin(li)]
| user_name | has_verified_email | is_mod | is_gold | is_banned | comment_karma | link_karma | user_created_at | banned_unverified | creation_year | |
|---|---|---|---|---|---|---|---|---|---|---|
| 13579 | PeterWrightMGTOW | True | True | False | False | 311.0 | 22982.0 | 2014-04-15 11:55:34 | others | others |
| 68174 | 5th_Law_of_Robotics | True | True | True | True | NaN | NaN | NaT | banned | banned |
df_mera_comments = df.query(" submission_text == 'petition_to_remove_accused_dv_perpetrator_amber' ")
print(df_mera_comments.shape)
df_mera_comments.head(1)
(282, 17)
| child_id | permalink | text | parent_id | subreddit | author | created_at | sentiment_blob | sentiment_nltk | score | top_level | submission_comment | text_words | submission_text | submission_words | urls | urls_count | |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 11943 | t3_b4ck1x | /r/MensRights/comments/b4ck1x/petition_to_remo... | Petition To Remove 'Accused DV Perpetrator' Am... | NaN | r/MensRights | PeterWrightMGTOW | 2019-03-23 00:14:25 | Neutral | Negative | 2745.0 | NaN | submission | 11 | petition_to_remove_accused_dv_perpetrator_amber | 7 | [] | 0 |
df_mera_contributions = df_mera_comments.groupby(df_mera_comments.created_at.dt.date).size().reset_index(name='n_contributions')
fig = px.bar(df_mera_contributions.head(7),
x='created_at',
y='n_contributions', title='The number of contributions/date on these submissions')
fig.update_layout(
xaxis = dict(
title='Contribution Date',
tickmode = 'array',
tickvals = df_mera_contributions.head(7).created_at,
)
)
clrs = ['red' if (y > 200) else '#5296dd' for y in df_mera_contributions.n_contributions]
fig.update_traces(marker_color=clrs, marker_line_width=1.5, opacity=1, textposition='auto')
fig.show()
df_mera_authors = df_mera_comments.groupby(df_mera_comments.author).size().reset_index(name='n_contributions')
fig = px.bar(df_mera_authors,
x='author',
y='n_contributions', title='The number of contributions per author on these submissions')
fig.update_traces(marker_color='#5296dd', opacity=1, textposition='auto')
# , marker_line_color='#5296dd', marker_line_width=2
fig.update_yaxes(range = [0,25])
fig.show()
df_mera_authors.sort_values('n_contributions', ascending=False).head(10)
| author | n_contributions | |
|---|---|---|
| 2 | -banned- | 35 |
| 59 | ThePigmanAgain | 13 |
| 22 | Gingerchaun | 12 |
| 4 | 5th_Law_of_Robotics | 10 |
| 39 | Lezardvy | 8 |
| 46 | Ninja_Arena | 7 |
| 37 | Kvlka666 | 6 |
| 38 | Lepplady | 6 |
| 88 | gellish | 6 |
| 104 | mgtowolf | 5 |
df_users.query(" user_name in ['ThePigmanAgain', 'Gingerchaun', '5th_Law_of_Robotics']")
| user_name | has_verified_email | is_mod | is_gold | is_banned | comment_karma | link_karma | user_created_at | banned_unverified | creation_year | |
|---|---|---|---|---|---|---|---|---|---|---|
| 11124 | ThePigmanAgain | True | False | False | False | 72060.0 | 84908.0 | 2013-09-07 00:25:23 | others | others |
| 13710 | Gingerchaun | True | False | False | False | 153991.0 | 1.0 | 2014-04-27 03:23:25 | others | others |
| 68174 | 5th_Law_of_Robotics | True | True | True | True | NaN | NaN | NaT | banned | banned |
Invesigating the sumbissions with most comments
(Top Level Comments)
df.parent_id.value_counts().head()
t3_b1bdis 273 t3_b1ccsj 253 t3_b10ld3 147 t3_bn6sot 145 t3_ako0za 142 Name: parent_id, dtype: int64
fig = px.bar(df.parent_id.value_counts().to_frame().head(25).reset_index(), x="parent_id", y="index",
height=500,
title='sumbissions with most comments (Top Level Comments)').update_layout(
xaxis_title='Number of comments',
yaxis_title='subbredit').update_traces(marker_color='#5296dd')
fig.update_yaxes(autorange="reversed")
df_top5 = df_merged[df_merged.child_id.isin(df_merged.parent_id.value_counts().head().index)]
with pd.option_context('display.max_colwidth', None):
display(df_top5)
| child_id | permalink | text | parent_id | subreddit | created_at | sentiment_blob | sentiment_nltk | score | top_level | ... | is_mod | is_gold | is_banned | comment_karma | link_karma | user_created_at | banned_unverified | creation_year | diff | days_after_creation | |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 315 | t3_ako0za | /r/TrueFMK/comments/ako0za/amber_heard_gal_gadot_margot_robbie/ | Amber Heard, Gal Gadot & Margot Robbie | NaN | r/TrueFMK | 2019-01-28 14:40:58 | Neutral | Neutral | 381.0 | NaN | ... | False | False | False | 77234.0 | 82.0 | 2011-11-06 21:08:20 | others | others | 2639 days 17:32:38 | 2639.0 |
| 2616 | t3_bn6sot | /r/JerkOffToCelebs/comments/bn6sot/you_have_3_scarlett_johansson_kate_upton_brie/ | You have $3. Scarlett Johansson // Kate Upton // Brie Larson // Gal Gadot // Daisy Ridley // Emilia Clarke // Jennifer Lawrence // Amber Heard // Sophie Turner | NaN | r/JerkOffToCelebs | 2019-05-11 02:00:52 | Neutral | Neutral | 592.0 | NaN | ... | False | False | False | 77234.0 | 82.0 | 2011-11-06 21:08:20 | others | others | 2742 days 04:52:32 | 2742.0 |
| 11195 | t3_b10ld3 | /r/worldnews/comments/b10ld3/johnny_depp_was_abused_by_exwife_amber_heard_new/ | Johnny Depp was abused by ex-wife Amber Heard, new evidence shows | NaN | r/worldnews | 2019-03-14 13:52:36 | Positive | Negative | 4552.0 | NaN | ... | False | False | False | 4954.0 | 36131.0 | 2018-03-14 20:29:49 | others | 2018 | 364 days 17:22:47 | 364.0 |
| 12609 | t3_b1bdis | /r/movies/comments/b1bdis/johnny_depp_was_abused_by_exwife_amber_heard_new/ | Johnny Depp was abused by ex-wife Amber Heard, new evidence shows | NaN | r/movies | 2019-03-15 06:22:15 | Positive | Negative | 9543.0 | NaN | ... | True | False | False | 101682.0 | 94461.0 | 2013-10-21 12:08:02 | others | others | 1970 days 18:14:13 | 1970.0 |
| 13814 | t3_b1ccsj | /r/entertainment/comments/b1ccsj/johnny_depp_was_abused_by_exwife_amber_heard_new/ | Johnny Depp was abused by ex-wife Amber Heard, new evidence shows | NaN | r/entertainment | 2019-03-15 08:32:39 | Positive | Negative | 13581.0 | NaN | ... | False | False | False | 147964.0 | 145144.0 | 2014-08-07 02:10:41 | others | others | 1681 days 06:21:58 | 1681.0 |
5 rows × 24 columns
df_merged.submission_text = df_merged.submission_text.str.replace('_', ' ')
# get a list with the top 5 submission text
top5_text = list(df_top5.text)
def compare(str):
for text in top5_text:
if str in text:
return True
else: return False
mask = df_merged.submission_text.apply(compare)
df_top5_contributions1 = df_merged[mask]
df_top5_authors = df_top5_contributions1.groupby(df_top5_contributions1.user_name).size().reset_index(name='n_contributions')
fig = px.bar(df_top5_authors,
x='user_name',
y='n_contributions', title='The number comments per author on these submissions')
fig.update_traces(marker_color='#5296dd', opacity=1, textposition='auto')
fig.show()
df_top5_contributions1.shape
(34, 24)
df_top5_contributions2 = df_merged[df_merged.parent_id.isin(df_merged.parent_id.value_counts().head().index)]
df_top5_authors = df_top5_contributions2.groupby(df_top5_contributions2.user_name).size().reset_index(name='n_contributions')
fig = px.bar(df_top5_authors,
x='user_name',
y='n_contributions', title='The number of parent comments per author on these submissions')
fig.update_traces( opacity=1, textposition='auto')
# , marker_line_color='#5296dd', marker_line_width=2
fig.update_yaxes(range = [0,5])
fig.show()
df_top5_authors.sort_values('n_contributions', ascending = False)
| user_name | n_contributions | |
|---|---|---|
| 1 | -banned- | 137 |
| 653 | nodeofollie | 3 |
| 156 | GrubbyResponder | 3 |
| 469 | ch1nomachin3 | 2 |
| 746 | theredditaccount4fun | 2 |
| ... | ... | ... |
| 270 | Ninevehwow | 1 |
| 271 | Ninja8282 | 1 |
| 272 | NivekIohc | 1 |
| 273 | NofYB | 1 |
| 798 | zero-chill | 1 |
799 rows × 2 columns
str(round(137 / df_top5_contributions2.shape[0] * 100, 2)) + ' % of contributions made by banned users'
'14.27 % of contributions made by banned users'
Invesigating authors with the most submissions¶
df_submissions = df[df.submission_comment == 'submission']
print(df_submissions.shape)
df_submissions.head(2)
(3818, 17)
| child_id | permalink | text | parent_id | subreddit | author | created_at | sentiment_blob | sentiment_nltk | score | top_level | submission_comment | text_words | submission_text | submission_words | urls | urls_count | |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 20 | t3_abeu1p | /r/JerkOffToCelebs/comments/abeu1p/i_cant_stop... | I can't stop cumming to Amber Heard after seei... | NaN | r/JerkOffToCelebs | jackstave | 2019-01-01 04:15:42 | Neutral | Positive | 130.0 | NaN | submission | 12 | i_cant_stop_cumming_to_amber_heard_after_seeing | 9 | [] | 0 |
| 38 | t3_abfc1j | /r/goddesses/comments/abfc1j/amber_heard/ | Amber Heard | NaN | r/goddesses | latimeriachalumnae | 2019-01-01 05:20:39 | Neutral | Neutral | 222.0 | NaN | submission | 2 | amber_heard | 2 | [] | 0 |
df_submissions.author.value_counts().nlargest(n=10)
-banned- 1294 spells010 80 Dannig178 67 newsfeedmedia 62 Sovetika 48 AutoNewsAdmin 36 AutoNewspaperAdmin 34 DerHander 30 bitcoinwallpaper2 30 InfiniTitans 28 Name: author, dtype: int64
df_submissions.author.value_counts().to_frame().head(10)
| author | |
|---|---|
| -banned- | 1294 |
| spells010 | 80 |
| Dannig178 | 67 |
| newsfeedmedia | 62 |
| Sovetika | 48 |
| AutoNewsAdmin | 36 |
| AutoNewspaperAdmin | 34 |
| DerHander | 30 |
| bitcoinwallpaper2 | 30 |
| InfiniTitans | 28 |
fig = px.bar(df_submissions.author.value_counts().to_frame().head(10).reset_index(), x="author", y="index",
height=500,
title='Authors with most Submissions').update_traces(marker_color='#5296dd',).update_layout(
xaxis_title='Number of Negative Submissions',
yaxis_title='Author_Name').update_traces(marker_color='#5296dd')
fig.update_yaxes(autorange="reversed")
Check wether the users with the most submissions are mod, gold or having a verified email¶
df_submissions.author.value_counts().head()
-banned- 1294 spells010 80 Dannig178 67 newsfeedmedia 62 Sovetika 48 Name: author, dtype: int64
check_list = df_submissions.author.value_counts().nlargest(n=25).index.tolist()[1:]
check_list
['spells010', 'Dannig178', 'newsfeedmedia', 'Sovetika', 'AutoNewsAdmin', 'AutoNewspaperAdmin', 'DerHander', 'bitcoinwallpaper2', 'InfiniTitans', 'Rednaxela117', 'jwmonty8889', 'GRJR721', 'Eagles1205', 'amigokomashiangeljr', 'Queen1110', 'imsrikant', 'MuskieFan18', 'FreedomNewsPolitics', 'LightUpStreets', 'emilyguy', '-en-', 'iDevice_Help', 'LongClawww', '88MPH1']
# get a data frame with the most negative-comments users
df_check = df_users[df_users['user_name'].isin(check_list)]
print(df_check.shape)
df_check.head(2)
(24, 10)
| user_name | has_verified_email | is_mod | is_gold | is_banned | comment_karma | link_karma | user_created_at | banned_unverified | creation_year | |
|---|---|---|---|---|---|---|---|---|---|---|
| 3937 | GRJR721 | True | True | False | False | 891.0 | 167792.0 | 2011-11-15 20:48:23 | others | others |
| 13888 | Dannig178 | True | True | True | False | 2765.0 | 982410.0 | 2014-05-14 14:35:40 | others | others |
df_check['user_name'].nunique()
24
get_stats(df_check)
The value counts of the users with the most contributions: has_verified_email True 23 False 1 Name: has_verified_email, dtype: int64 The value counts of the users with the most contributions: is_mod True 19 False 5 Name: is_mod, dtype: int64 The value counts of the users with the most contributions: is_gold False 17 True 7 Name: is_gold, dtype: int64 The value counts of the users with the most contributions: is_banned False 19 True 5 Name: is_banned, dtype: int64 The min of comment_karma 0.0 The max of comment_karma 26585.0 The mean of comment_karma 4481.74 The median of comment_karma 4481.74 The min of link_karma 1.0 The max of link_karma 1836704.0 The mean of link_karma 263380.79 The median of link_karma 263380.79 The value counts of the users with the most contributions: banned_unverified others 18 banned 5 unverified 1 Name: banned_unverified, dtype: int64 The value counts of the users with the most contributions: creation_year others 12 banned 5 2018 5 2019 2 Name: creation_year, dtype: int64
df['urls'].nunique()
309
df[df.astype(str)['urls'] != '[]'].head(2)
| child_id | permalink | text | parent_id | subreddit | author | created_at | sentiment_blob | sentiment_nltk | score | top_level | submission_comment | text_words | submission_text | submission_words | urls | urls_count | |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 16 | t1_eczn62j | /r/DC_Cinematic/comments/abc2ip/other_amber_he... | https://m.imdb.com/chart/starmeter | t1_eczmodm | r/DC_Cinematic | kyotomafia1997 | 2019-01-01 03:09:57 | Neutral | Neutral | 1.0 | comment | comment | 1 | DC_Cinematic | 2 | ['https://m.imdb.com'] | 1 |
| 115 | t1_ed2k6ix | /r/gentlemanboners/comments/abq2g3/amber_heard... | https://i.redd.it/4ozubx3lri721.jpg | t3_abq2g3 | r/gentlemanboners | halflife_3 | 2019-01-02 10:10:49 | Neutral | Neutral | 7.0 | submission | comment | 1 | amber_heard | 2 | ['https://i.redd.it'] | 1 |
df['urls'].astype('str').value_counts().head()
[] 22608 ['https://jerkofftocelebs.com', 'https://www.instagram.com', 'https://discord.gg'] 94 ['https://www.instagram.com'] 88 ['https://www.instagram.com', 'https://discord.gg'] 64 ['https://www.reddit.com'] 63 Name: urls, dtype: int64
# the value counts of the # of urls
df['urls_count'].value_counts();
fig = px.histogram(df['urls_count'].to_frame(), x="urls_count",title='Count of the number of URLS in each Contribution',
nbins=130).update_traces(marker_color='#5296dd')
fig.update_layout(
xaxis = dict(
tickmode = 'array',
tickvals = df['urls_count'],
)
)
fig.show()
px.histogram(df[~(df['urls_count'].isin([0,60,20,16]))], x="urls_count",title='Count of the number of URLS in each Contribution',
nbins=20).update_traces(marker_color='#5296dd')
Check the number of submission text words
Of course few words are easier for bots to create
fig = px.histogram(df['submission_words'].to_frame(), x="submission_words",
title='number of words in submission text',
nbins=50).update_traces(marker_color='#5296dd')
fig.update_layout(
xaxis = dict(
title='Number of submission words',
tickmode = 'linear',
)
)
Most used Subreddits¶
df['subreddit'].nunique()
535
df['subreddit'] = df['subreddit'].str[:]
df.subreddit.value_counts().to_frame().head(10)
| subreddit | |
|---|---|
| r/movies | 3065 |
| r/entertainment | 2743 |
| r/JerkOffToCelebs | 1361 |
| r/worldnews | 1224 |
| r/Celebs | 1067 |
| r/MensRights | 1051 |
| r/gentlemanboners | 1034 |
| r/DC_Cinematic | 784 |
| r/pussypassdenied | 780 |
| r/television | 665 |
fig = px.bar(df.subreddit.value_counts().to_frame().head(20).reset_index(), x="subreddit", y="index",
height=500,
title='Most used subbredits').update_traces(marker_color='#5296dd',).update_layout(
xaxis_title='Number of comments',
yaxis_title='subbredit').update_traces(marker_color='#5296dd')
fig.update_yaxes(autorange="reversed")
Merged Users Data with Comments & Submissions Data¶
Difference in time between creating the account and posting¶
# note that value_counts() neglect Zeros
df_merged["days_after_creation"].value_counts()
2685.0 508
2684.0 297
2683.0 186
2686.0 179
2.0 104
...
3060.0 1
2363.0 1
2175.0 1
1571.0 1
3266.0 1
Name: days_after_creation, Length: 3291, dtype: int64
px.histogram(df_merged, x="days_after_creation",title='days_after_creation',
nbins=250).update_traces(marker_color='#5296dd',).update_layout(
xaxis_title='number of days',)
print('The number of accounts posted the same day they was created!', df_merged[df_merged['days_after_creation'] == 0].shape[0])
The number of accounts posted the same day they was created! 66
print('The number of accounts posted the same week they was created', df_merged[df_merged['days_after_creation'] <= 7].shape[0])
The number of accounts posted the same week they was created 307
print('The number of accounts posted the same month they was created', df_merged[df_merged['days_after_creation'] <= 30].shape[0])
The number of accounts posted the same month they was created 734
df_merged[df_merged['days_after_creation'] <= 30]['user_created_at'].dt.year.value_counts()
2019 712 2018 22 Name: user_created_at, dtype: int64
we can find that 323 accounts created and posted within the same month in 2021.
mask = (df_merged['days_after_creation'] <= 30) & (df_merged['user_created_at'].dt.year == 2019)
df_merged[mask]['user_created_at'].dt.strftime('%b').value_counts()
Feb 130 Jul 125 Mar 115 Oct 74 May 52 Jun 42 Jan 40 Apr 35 Sep 34 Aug 29 Nov 23 Dec 13 Name: user_created_at, dtype: int64
months = df_merged[df_merged['days_after_creation'] <= 30]['user_created_at'].dt.strftime('%b')
months
4532 Dec
4567 Dec
4583 Dec
5068 Dec
5069 Dec
...
23662 Dec
23663 Dec
23664 Dec
23668 Dec
23669 Dec
Name: user_created_at, Length: 734, dtype: object
months_sorted = months.value_counts()
months_sorted
Feb 130 Jul 125 Mar 115 Oct 74 May 52 Jun 42 Jan 40 Apr 35 Dec 35 Sep 34 Aug 29 Nov 23 Name: user_created_at, dtype: int64
new_order = ['Jan', 'Feb', 'Mar', 'Apr', 'May', 'Jun', 'Jul', 'Aug', 'Sep', 'Oct', 'Nov', 'Dec']
months_sorted = months_sorted.reindex(new_order, axis=0)
months_sorted.to_frame().reset_index().rename(columns={'index':'month'})
| month | user_created_at | |
|---|---|---|
| 0 | Jan | 40 |
| 1 | Feb | 130 |
| 2 | Mar | 115 |
| 3 | Apr | 35 |
| 4 | May | 52 |
| 5 | Jun | 42 |
| 6 | Jul | 125 |
| 7 | Aug | 29 |
| 8 | Sep | 34 |
| 9 | Oct | 74 |
| 10 | Nov | 23 |
| 11 | Dec | 35 |
fig = px.bar(months_sorted.to_frame().reset_index().rename(columns={'index':'month'}),
x='month', y='user_created_at', text='user_created_at')
fig.update_layout(
title={
'text': "contributions of the accounts posted/commented <br> the same month they were created",
'x':0.5,
'xanchor': 'center',
'yanchor': 'top'
})
# fig.update_layout(
# xaxis = dict(
# title='Month(2021)',
# tickmode = 'array',
# tickvals = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12],
# ticktext = ['Jan', 'Feb', 'Mar', 'Apr', 'May', 'Jun', 'Jul', 'Aug', 'Sep', 'Oct', 'Nov', 'Dec']
# )
# )
clrs = ['red' if (y > 100) else '#5296dd' for y in months_sorted.values]
fig.update_traces(marker_color=clrs,
marker_line_width=1.5, opacity=1, textposition='auto')
fig.show()
# THE SAME MONTH:
# check for the date these accounts posted/commented
reddit_30 = df_merged[df_merged['days_after_creation'] <= 30]
dates_count = df_merged.groupby(reddit_30['created_at'].dt.date).size().reset_index(name='contributions')
dates_count.sort_values('contributions', ascending=False);
fig = px.bar(dates_count,
x='created_at',
y='contributions', title = 'contributions of the accounts posted/commented the same month they were created')
fig.update_traces(marker_color='#5296dd',
marker_line_width=0.5, opacity=1, textposition='auto').update_layout()
fig.show()
# THE SAME WEEK
# check for the date these accounts posted/commented
reddit_7 = df_merged[df_merged['days_after_creation'] <= 7]
dates_count_7 = df_merged.groupby(reddit_7['created_at'].dt.date).size().reset_index(name='contributions')
dates_count_7.sort_values('contributions', ascending=False);
fig = px.bar(dates_count_7,
x='created_at',
y='contributions', title = 'contributions of the accounts posted/commented the same week they were created')
fig.update_traces(marker_color='#5296dd',
marker_line_width=0.5, opacity=1, textposition='auto').update_layout()
fig.show()
# THE SAME DAY
# check for the date these accounts posted/commented
reddit_1 = df_merged[df_merged['days_after_creation'] <= 0]
dates_count_1 = df_merged.groupby(reddit_1['created_at'].dt.date).size().reset_index(name='contributions')
dates_count_1.sort_values('contributions', ascending=False);
fig = px.bar(dates_count_1,
x='created_at',
y='contributions', title = 'contributions of the accounts posted/commented the same day they were created')
fig.update_traces(marker_color='#5296dd',
marker_line_width=0.5, opacity=1, textposition='auto').update_layout()
fig.show()
# get the author names that commented in a negative way the same month the account was created
# to add to the suspected list
df_merged_30 = df_merged.query("days_after_creation <= 30 & sentiment_blob == sentiment_nltk == 'Negative' ")
df_merged_30.head()
| child_id | permalink | text | parent_id | subreddit | created_at | sentiment_blob | sentiment_nltk | score | top_level | ... | is_mod | is_gold | is_banned | comment_karma | link_karma | user_created_at | banned_unverified | creation_year | diff | days_after_creation | |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 5305 | t1_ed7c61l | /r/JerkOffToCelebs/comments/aca5jt/what_would_... | Enough so she’d be swimming in lust, broken in... | t3_aca5jt | r/JerkOffToCelebs | 2019-01-04 04:57:28 | Negative | Negative | 4.0 | submission | ... | False | False | False | 595.0 | 246.0 | 2018-12-29 14:52:29 | others | 2018 | 5 days 14:04:59 | 5.0 |
| 7599 | t1_egyx0y7 | /r/goddesses/comments/at2o4n/amber_heard/egyx0y7/ | Poor Elon Musk 😂😂 | t3_at2o4n | r/goddesses | 2019-02-21 18:13:58 | Negative | Negative | 0.0 | submission | ... | False | False | False | 2298.0 | 275.0 | 2019-02-11 07:02:10 | others | 2019 | 10 days 11:11:48 | 10.0 |
| 9542 | t1_ehsnab0 | /r/movies/comments/axbt8y/johnny_depp_sues_exw... | Sad how far he has fallen | t3_axbt8y | r/movies | 2019-03-04 21:32:29 | Negative | Negative | 0.0 | submission | ... | False | False | False | 652.0 | 2.0 | 2019-02-12 17:59:24 | unverified | 2019 | 20 days 03:33:05 | 20.0 |
| 9633 | t1_ehycquk | /r/movies/comments/axbt8y/johnny_depp_sues_exw... | There was a video of him throwing things aroun... | t1_ehsnd8g | r/movies | 2019-03-06 23:10:48 | Negative | Negative | 1.0 | comment | ... | False | False | False | 189.0 | 10.0 | 2019-02-27 23:08:47 | unverified | 2019 | 7 days 00:02:01 | 7.0 |
| 9638 | t1_ei5ml01 | /r/movies/comments/axbt8y/johnny_depp_sues_exw... | It is classic Hostile Sexism to be skeptical a... | t1_ehsod3q | r/movies | 2019-03-09 18:47:16 | Negative | Negative | 1.0 | comment | ... | False | False | False | 189.0 | 10.0 | 2019-02-27 23:08:47 | unverified | 2019 | 9 days 19:38:29 | 9.0 |
5 rows × 24 columns
Estimation of Number of User Accounts Created in each year / having contributions in 2019¶
# group by creation year and count
df_contributions = df_merged.groupby(df_merged['user_created_at'].dt.year).size().reset_index(name='n_accounts')
fig = px.bar(df_contributions,
x='user_created_at', y='n_accounts', text='n_accounts', title='Number of User Accounts Created in each year / having contributions in 2019')
fig.update_traces(marker_color='#5296dd',
marker_line_width=1.5, opacity=1, textposition='auto')
fig.show()
Contributions count over Months in 2019¶
fig = px.bar(df.groupby(df['created_at'].dt.month).size().reset_index(name='contribution_count'),
x='created_at', y='contribution_count', text='contribution_count')
fig.update_layout(
title={
'text': "Estimation of the number contributions created in each month of 2019",
'x':0.5,
'xanchor': 'center',
'yanchor': 'top'
})
fig.update_layout(
xaxis = dict(
title='Month(2019)',
tickmode = 'array',
tickvals = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12],
ticktext = ['Jan', 'Feb', 'Mar', 'Apr', 'May', 'Jun', 'Jul', 'Aug', 'Sep', 'Oct', 'Nov', 'Dec']
)
)
clrs = ['red' if (y > 4000) else '#5296dd' for y in df.groupby(df['created_at'].dt.month).size()]
fig.update_traces(marker_color=clrs,
marker_line_width=1.5, opacity=1, textposition='auto')
fig.show()
Contributions count over Days of month in 2019¶
fig = px.bar(df.groupby(df['created_at'].dt.day).size().reset_index(name='contribution_count'),
x='created_at', y='contribution_count', text='contribution_count')
fig.update_layout(
title={
'text': "Estimation of the number contributions created in each DayOfMonth in 2019",
'x':0.5,
'xanchor': 'center',
'yanchor': 'top'
})
fig.update_layout(
xaxis = dict(
title='Month Days(2019)',
tickmode = 'linear',
)
)
clrs = ['red' if (y > 1500) else '#5296dd' for y in df.groupby(df['created_at'].dt.day).size()]
fig.update_traces(marker_color=clrs,
marker_line_width=1.5, opacity=1, textposition='auto')
fig.show()
In Which DayOfWeek users created more?¶
week_day = df['created_at'].dt.strftime('%a')
# one can sort by any order by providing a custom index explicitely :
# https://stackoverflow.com/questions/43855474/changing-sort-in-value-counts/43855492
week_sorted = week_day.value_counts()[['Mon', 'Tue', 'Wed', 'Thu', 'Fri', 'Sat', 'Sun']]
week_sorted
Mon 2742 Tue 2693 Wed 3111 Thu 3980 Fri 5523 Sat 3291 Sun 2338 Name: created_at, dtype: int64
fig = px.bar(df.groupby(df['created_at'].dt.dayofweek).size().reset_index(name='contribution_count'),
x='created_at', y='contribution_count', text='contribution_count')
fig.update_layout(
title={
'text': "Estimation of the number contributions created in each DayOfWeek (2019)",
'x':0.5,
'xanchor': 'center',
'yanchor': 'top'
})
fig.update_layout(
xaxis = dict(
title='DayOfWeek(2019)',
tickmode = 'array',
tickvals = [0, 1, 2, 3, 4, 5, 6],
ticktext = ['Mon', 'Tue', 'Wed', 'Thu', 'Fri', 'Sat', 'Sun']
)
)
clrs = ['red' if (y > 4000) else '#5296dd' for y in df.groupby(df['created_at'].dt.dayofweek).size()]
fig.update_traces(marker_color=clrs,
marker_line_width=1.5, opacity=1, textposition='auto')
fig.show()
check for the hour the contributions were made (2019)¶
# check for the hour the contributions were made
df_hours = df.groupby(df['created_at'].dt.hour).size().reset_index(name='contribution_count')
# df_hours.sort_values('contribution_count', ascending=False);
fig = px.bar(df_hours,
x='created_at', y='contribution_count',
title='Number of contrbutions Comment/Submission in day hours (2019)')
fig.update_layout(
xaxis = dict(
title='Hours of Day',
tickmode = 'linear',
dtick = 1
)
)
fig.update_traces(marker_color='#5296dd',
marker_line_width=1.5, opacity=1, textposition='auto').update_layout()
fig.show()
Which dates has the highest contrbitions for users?¶
df.created_at.dt.date.value_counts().head()
2019-03-15 3221 2019-03-14 1844 2019-03-13 1170 2019-03-16 818 2019-03-02 505 Name: created_at, dtype: int64
trendy_dates = df.groupby(df['created_at'].dt.date).size().reset_index(name='contribution_count')
fig = px.bar(trendy_dates,
x='created_at', y='contribution_count')
fig.update_layout(
title={
'text': "The number of contributions created in each date",
'x':0.5,
'xanchor': 'center',
'yanchor': 'top'
})
fig.update_traces(marker_color='#5296dd',
marker_line_width=0.5, opacity=1, textposition='auto').update_layout()
fig.show()
top_trendy_dates = trendy_dates.sort_values('contribution_count', ascending=False).head(5)
top_trendy_dates
| created_at | contribution_count | |
|---|---|---|
| 73 | 2019-03-15 | 3221 |
| 72 | 2019-03-14 | 1844 |
| 71 | 2019-03-13 | 1170 |
| 74 | 2019-03-16 | 818 |
| 60 | 2019-03-02 | 505 |
fig = px.bar(top_trendy_dates,
x='created_at', y='contribution_count', title='Number of contrbutions Comment/Submission in trendy dates')
fig.update_layout(
xaxis = dict(
title='Contribution Date',
tickmode = 'array',
tickvals = top_trendy_dates.created_at,
)
)
clrs = ['red' if (y > 400) else '#5296dd' for y in top_trendy_dates.contribution_count]
fig.update_traces(marker_color=clrs,
opacity=1, textposition='auto').update_layout()
# marker_line_width=1.5,
fig.show()
def peack_days(date):
print(f'How many users contributed on the peak day ({date})')
print(df_merged[df_merged.created_at.dt.strftime('%Y-%m-%d') == date].user_name.nunique())
print(df_merged[df_merged.created_at.dt.strftime('%Y-%m-%d') == date].user_name.shape)
print('Years')
df_merged_peak1 = df_merged[df_merged.created_at.dt.strftime('%Y-%m-%d') == date]
# check for the year the accounts were created
df_user_year1 = df_merged_peak1.groupby(df_merged_peak1['user_created_at'].dt.year).size().reset_index(name='contribution_count')
fig = px.bar(df_user_year1,
x='user_created_at', y='contribution_count',
title=f'The creation year of the accounts contributed on the peak day ({date})')
fig.update_layout(
xaxis = dict(
title='Accout Creation Year',
tickmode = 'linear',
dtick = 1
)
)
clrs = ['red' if (y > 250) else '#5296dd' for y in df_user_year1.contribution_count]
fig.update_traces(marker_color=clrs,
marker_line_width=1.5, opacity=1, textposition='auto').update_layout()
fig.show()
print('hours')
df_peak_1 = df[df.created_at.dt.strftime('%Y-%m-%d') == f'{date}']
# check for the hour the contributions were made
df_hours = df_peak_1.groupby(df['created_at'].dt.hour).size().reset_index(name='contribution_count')
# df_hours.sort_values('contribution_count', ascending=False);
fig2 = px.bar(df_hours,
x='created_at', y='contribution_count',
title='Number of contrbutions Comment/Submission in day hours')
fig2.update_layout(
xaxis = dict(
title='Hours of Day',
tickmode = 'linear',
dtick = 1
)
)
clrs = ['red' if (y > 80) else '#5296dd' for y in df_hours.contribution_count]
fig2.update_traces(marker_color=clrs,
marker_line_width=1.5, opacity=1, textposition='auto').update_layout()
fig2.show()
top_trendy_dates
| created_at | contribution_count | |
|---|---|---|
| 73 | 2019-03-15 | 3221 |
| 72 | 2019-03-14 | 1844 |
| 71 | 2019-03-13 | 1170 |
| 74 | 2019-03-16 | 818 |
| 60 | 2019-03-02 | 505 |
peack_days('2019-03-15')
How many users contributed on the peak day (2019-03-15) 1553 (3221,) Years
hours
peack_days('2019-03-14')
How many users contributed on the peak day (2019-03-14) 893 (1844,) Years
hours
peack_days('2019-03-13')
How many users contributed on the peak day (2019-03-13) 536 (1170,) Years
hours
peack_days('2019-03-16')
How many users contributed on the peak day (2019-03-16) 466 (818,) Years
hours
peack_days('2019-03-02')
How many users contributed on the peak day (2019-03-02) 275 (505,) Years
hours